/// <summary> /// Generates extra request operations /// </summary> /// <param name="requestManager">RequestManager to build the operations.</param> /// <param name="baseUri">Base uri for the operations</param> /// <returns>An array of request operations.</returns> public static IMimePart[] ExtraRequestOperations(IODataRequestManager requestManager, ODataUri baseUri) { ExceptionUtilities.CheckArgumentNotNull(requestManager, "requestManager"); ExceptionUtilities.CheckArgumentNotNull(baseUri, "baseUri"); var headers = new Dictionary <string, string> { { "RequestHeader", "RequestHeaderValue" } }; string mergeContentType = HttpUtilities.BuildContentType(MimeTypes.ApplicationXml, Encoding.UTF8.WebName, null); List <IHttpRequest> requests = new List <IHttpRequest>(); requests.Add(requestManager.BuildRequest(baseUri, HttpVerb.Get, headers)); var segments = baseUri.Segments; ODataUriSegment[] segmentstoadd = { ODataUriBuilder.EntitySet(new EntitySet("Set1")), ODataUriBuilder.EntityType(new EntityType("EntityType")), ODataUriBuilder.EntitySet(new EntitySet("Set2")), ODataUriBuilder.EntityType(new EntityType("EntityType2")), }; foreach (var segment in segmentstoadd) { requests.Add(requestManager.BuildRequest(new ODataUri(segments.ConcatSingle(segment)), HttpVerb.Get, headers)); } return(requests.ToArray()); }
private ODataUri GenerateEntityEditLinkUri(EntitySet entitySet, EntityType entityType, IEnumerable <NamedValue> keyValues) { // null checks performed by ODataUriBuilder var conventionalEditLink = this.GenerateEntityIdUri(entitySet, entityType, keyValues); if (EditLinkShouldContainTypeSegment(entitySet, entityType)) { conventionalEditLink.Segments.Add(ODataUriBuilder.EntityType(entityType)); } return(conventionalEditLink); }