Je me connecte à un service ODATA via une application C# ASP.NET, qui a des activités de service telles que:ODATA Consommez Service Operation de C# ASP.NET 4.0
GetItems(int? itemID, double? price)
Je peux consommer ce sans problèmes dans mon navigateur, par exemple
http://api.mycompany.com/companycatalogue/GetItems?itemID=4
Je comprends comment utiliser LINQ to Entities consommer un service OData, mais ne peut pas trouver une explication décente de la façon de consommer le service opérations comme celle-ci en C#. J'ai fait une référence Web au service dans ma solution Visual Studio.
Jusqu'à présent, j'ai quelque chose comme ça pour mon habitude consommatrice des données:
using CompanyCatalogue; //my web reference
...
protected void Page_Load(object sender, EventArgs e)
{
CompanyCatalogueEntities dataContext = new CompanyCatalogueEntities (new Uri("http://api.mycompany.com/companycatalogue/"));
var result = from i in dataContext.Items select i; //just an example
//this is where I get into problems
var operationResults = CompanyCatalogue.GetItems(6, 20.5); //I just made this up
}
Tous les pointeurs?
Voulez-vous dire, en utilisant l'URL et en analysant la sortie? – Zac
@Zac Oui. Alternativement, vous pouvez utiliser HTTPClient du kit de démarrage WCF REST, il fera tout le travail lourd pour vous. Même désérialisant en types forts. –