private static void BuildODataModelFromXml(HttpConfiguration config) { // Build the model from XML files, map separate endpoint var csdl = new CsdlReaderWriter(); var modelFromXml = csdl.BuildModelFromXmlFiles(); config.MapODataServiceRoute("odataFromXml", "ds/modelFromXml", modelFromXml); }
private static void BuildODataModel(HttpConfiguration config) { // build the model using the OData Builder var builder = new ODataConventionModelBuilder(); builder.EntitySet <Person>("People"); builder.EntitySet <ContactMethod>("ContactMethods"); // add a function builder.Namespace = "CampusNexus"; builder.EntityType <ContactMethod>().Collection .Function("GetAllEmails") .ReturnsCollectionFromEntitySet <ContactMethod>("ContactMethods"); var edmModel = builder.GetEdmModel(); config.MapODataServiceRoute("odataFromBuilder", "ds/modelFromBuilder", edmModel); // save the model to XML var csdl = new CsdlReaderWriter(); csdl.WriteModelToCsdl(edmModel); }