/// <summary>
 /// Get adoxio_investigationcontact_PrincipalObjectAttributeAccesses from
 /// adoxio_investigationcontacts
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='adoxioInvestigationcontactid'>
 /// key: adoxio_investigationcontactid of adoxio_investigationcontact
 /// </param>
 /// <param name='top'>
 /// </param>
 /// <param name='skip'>
 /// </param>
 /// <param name='search'>
 /// </param>
 /// <param name='filter'>
 /// </param>
 /// <param name='count'>
 /// </param>
 /// <param name='orderby'>
 /// Order items by property values
 /// </param>
 /// <param name='select'>
 /// Select properties to be returned
 /// </param>
 /// <param name='expand'>
 /// Expand related entities
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task<MicrosoftDynamicsCRMprincipalobjectattributeaccessCollection> GetAsync(this IInvestigationcontactprincipalobjectattributeaccesses operations, string adoxioInvestigationcontactid, int? top = default(int?), int? skip = default(int?), string search = default(string), string filter = default(string), bool? count = default(bool?), IList<string> orderby = default(IList<string>), IList<string> select = default(IList<string>), IList<string> expand = default(IList<string>), CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.GetWithHttpMessagesAsync(adoxioInvestigationcontactid, top, skip, search, filter, count, orderby, select, expand, null, cancellationToken).ConfigureAwait(false))
     {
         return _result.Body;
     }
 }
 /// <summary>
 /// Get adoxio_investigationcontact_PrincipalObjectAttributeAccesses from
 /// adoxio_investigationcontacts
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='adoxioInvestigationcontactid'>
 /// key: adoxio_investigationcontactid of adoxio_investigationcontact
 /// </param>
 /// <param name='top'>
 /// </param>
 /// <param name='skip'>
 /// </param>
 /// <param name='search'>
 /// </param>
 /// <param name='filter'>
 /// </param>
 /// <param name='count'>
 /// </param>
 /// <param name='orderby'>
 /// Order items by property values
 /// </param>
 /// <param name='select'>
 /// Select properties to be returned
 /// </param>
 /// <param name='expand'>
 /// Expand related entities
 /// </param>
 public static MicrosoftDynamicsCRMprincipalobjectattributeaccessCollection Get(this IInvestigationcontactprincipalobjectattributeaccesses operations, string adoxioInvestigationcontactid, int? top = default(int?), int? skip = default(int?), string search = default(string), string filter = default(string), bool? count = default(bool?), IList<string> orderby = default(IList<string>), IList<string> select = default(IList<string>), IList<string> expand = default(IList<string>))
 {
     return operations.GetAsync(adoxioInvestigationcontactid, top, skip, search, filter, count, orderby, select, expand).GetAwaiter().GetResult();
 }
 /// <summary>
 /// Get adoxio_investigationcontact_PrincipalObjectAttributeAccesses from
 /// adoxio_investigationcontacts
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='adoxioInvestigationcontactid'>
 /// key: adoxio_investigationcontactid of adoxio_investigationcontact
 /// </param>
 /// <param name='principalobjectattributeaccessid'>
 /// key: principalobjectattributeaccessid of principalobjectattributeaccess
 /// </param>
 /// <param name='select'>
 /// Select properties to be returned
 /// </param>
 /// <param name='expand'>
 /// Expand related entities
 /// </param>
 /// <param name='customHeaders'>
 /// Headers that will be added to request.
 /// </param>
 public static HttpOperationResponse<MicrosoftDynamicsCRMprincipalobjectattributeaccess> PrincipalObjectAttributeAccessesByKeyWithHttpMessages(this IInvestigationcontactprincipalobjectattributeaccesses operations, string adoxioInvestigationcontactid, string principalobjectattributeaccessid, IList<string> select = default(IList<string>), IList<string> expand = default(IList<string>), Dictionary<string, List<string>> customHeaders = null)
 {
     return operations.PrincipalObjectAttributeAccessesByKeyWithHttpMessagesAsync(adoxioInvestigationcontactid, principalobjectattributeaccessid, select, expand, customHeaders, CancellationToken.None).ConfigureAwait(false).GetAwaiter().GetResult();
 }
 /// <summary>
 /// Get adoxio_investigationcontact_PrincipalObjectAttributeAccesses from
 /// adoxio_investigationcontacts
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='adoxioInvestigationcontactid'>
 /// key: adoxio_investigationcontactid of adoxio_investigationcontact
 /// </param>
 /// <param name='principalobjectattributeaccessid'>
 /// key: principalobjectattributeaccessid of principalobjectattributeaccess
 /// </param>
 /// <param name='select'>
 /// Select properties to be returned
 /// </param>
 /// <param name='expand'>
 /// Expand related entities
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task<MicrosoftDynamicsCRMprincipalobjectattributeaccess> PrincipalObjectAttributeAccessesByKeyAsync(this IInvestigationcontactprincipalobjectattributeaccesses operations, string adoxioInvestigationcontactid, string principalobjectattributeaccessid, IList<string> select = default(IList<string>), IList<string> expand = default(IList<string>), CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.PrincipalObjectAttributeAccessesByKeyWithHttpMessagesAsync(adoxioInvestigationcontactid, principalobjectattributeaccessid, select, expand, null, cancellationToken).ConfigureAwait(false))
     {
         return _result.Body;
     }
 }
 /// <summary>
 /// Get adoxio_investigationcontact_PrincipalObjectAttributeAccesses from
 /// adoxio_investigationcontacts
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='adoxioInvestigationcontactid'>
 /// key: adoxio_investigationcontactid of adoxio_investigationcontact
 /// </param>
 /// <param name='principalobjectattributeaccessid'>
 /// key: principalobjectattributeaccessid of principalobjectattributeaccess
 /// </param>
 /// <param name='select'>
 /// Select properties to be returned
 /// </param>
 /// <param name='expand'>
 /// Expand related entities
 /// </param>
 public static MicrosoftDynamicsCRMprincipalobjectattributeaccess PrincipalObjectAttributeAccessesByKey(this IInvestigationcontactprincipalobjectattributeaccesses operations, string adoxioInvestigationcontactid, string principalobjectattributeaccessid, IList<string> select = default(IList<string>), IList<string> expand = default(IList<string>))
 {
     return operations.PrincipalObjectAttributeAccessesByKeyAsync(adoxioInvestigationcontactid, principalobjectattributeaccessid, select, expand).GetAwaiter().GetResult();
 }
 /// <summary>
 /// Get adoxio_investigationcontact_PrincipalObjectAttributeAccesses from
 /// adoxio_investigationcontacts
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='adoxioInvestigationcontactid'>
 /// key: adoxio_investigationcontactid of adoxio_investigationcontact
 /// </param>
 /// <param name='top'>
 /// </param>
 /// <param name='skip'>
 /// </param>
 /// <param name='search'>
 /// </param>
 /// <param name='filter'>
 /// </param>
 /// <param name='count'>
 /// </param>
 /// <param name='orderby'>
 /// Order items by property values
 /// </param>
 /// <param name='select'>
 /// Select properties to be returned
 /// </param>
 /// <param name='expand'>
 /// Expand related entities
 /// </param>
 /// <param name='customHeaders'>
 /// Headers that will be added to request.
 /// </param>
 public static HttpOperationResponse<MicrosoftDynamicsCRMprincipalobjectattributeaccessCollection> GetWithHttpMessages(this IInvestigationcontactprincipalobjectattributeaccesses operations, string adoxioInvestigationcontactid, int? top = default(int?), int? skip = default(int?), string search = default(string), string filter = default(string), bool? count = default(bool?), IList<string> orderby = default(IList<string>), IList<string> select = default(IList<string>), IList<string> expand = default(IList<string>), Dictionary<string, List<string>> customHeaders = null)
 {
     return operations.GetWithHttpMessagesAsync(adoxioInvestigationcontactid, top, skip, search, filter, count, orderby, select, expand, customHeaders, CancellationToken.None).ConfigureAwait(false).GetAwaiter().GetResult();
 }