/// <summary> /// /// </summary> /// <param name="objektid"></param> /// <returns></returns> public List <RattighetMemberType> GetRattighetData(string objektid) { RattighetPortTypeClient client = new RattighetPortTypeClient(); using (OperationContextScope scope = new OperationContextScope(client.InnerChannel)) { HttpRequestMessageProperty httpRequestProperty = new HttpRequestMessageProperty(); httpRequestProperty.Headers.Add("Authorization", "Bearer " + "StringToken"); OperationContext.Current.OutgoingMessageProperties[HttpRequestMessageProperty.Name] = httpRequestProperty; List <RattighetMemberType> privileges = new List <RattighetMemberType>(); RegisterenhetFilterType filter = new RegisterenhetFilterType() { ItemElementName = ItemChoiceType1.objektidentitet, Item = objektid }; FindRattighetRequestType findRequest = new FindRattighetRequestType() { Item = filter }; List <RattighetsreferensType> rattigheter = new List <RattighetsreferensType>(); RattighetsreferensResponseType rattighet = client.FindRattighet(findRequest); if (rattighet.Items != null) { foreach (var item in rattighet.Items) { if (item is RattighetsreferensArrayPropertyType) { RattighetsreferensArrayPropertyType ans = item as RattighetsreferensArrayPropertyType; rattigheter.AddRange(ans.Rattighetsreferens); } if (item is RattighetsreferensType) { RattighetsreferensType ans = item as RattighetsreferensType; rattigheter.Add(ans); } } } rattigheter.ToList().ForEach(ratt => { GetRattighetRequestType request = new GetRattighetRequestType(); request.IncludeData = new RattighetDatasetType() { Items = new bool[] { true }, ItemsElementName = new ItemsChoiceType[] { ItemsChoiceType.total } }; request.Items = new string[] { ratt.objektidentitet }; privileges.Add(client.GetRattighet(request).RattighetMember.FirstOrDefault()); }); return(privileges); } }
/// <summary> /// /// </summary> /// <param name="objektid"></param> /// <returns></returns> public List <MarkregleringMemberType> GetMarkregleringData(string objektid) { MarkregleringPortTypeClient client = new MarkregleringPortTypeClient(); using (OperationContextScope scope = new OperationContextScope(client.InnerChannel)) { HttpRequestMessageProperty httpRequestProperty = new HttpRequestMessageProperty(); httpRequestProperty.Headers.Add("Authorization", "Bearer " + "StringToken"); OperationContext.Current.OutgoingMessageProperties[HttpRequestMessageProperty.Name] = httpRequestProperty; List <MarkregleringMemberType> croundControls = new List <MarkregleringMemberType>(); RegisterenhetFilterType filter = new RegisterenhetFilterType() { ItemElementName = ItemChoiceType2.objektidentitet, Item = objektid }; FindMarkregleringRequestType findRequest = new FindMarkregleringRequestType() { Item = filter }; MarkregleringsreferensType[] markregleringar = client.FindMarkreglering(findRequest); markregleringar.ToList().ForEach(markreglering => { GetMarkregleringRequestType request = new GetMarkregleringRequestType(); request.IncludeData = new MarkregleringDatasetType() { Items = new bool[] { true }, ItemsElementName = new ItemsChoiceType1[] { ItemsChoiceType1.total } }; request.ItemsElementName = new ItemsChoiceType[] { ItemsChoiceType.objektidentitet }; request.Items = new string[] { markreglering.objektidentitet }; croundControls.Add(client.GetMarkreglering(request).MarkregleringMember.FirstOrDefault()); }); return(croundControls); } }