Passer plusieurs paramètres, avec OData URL
Je veux passer plusieurs paramètres, dans ma Requête Get à l'aide Protocole OData. Ci-dessous est ce que je fais.
Je suis à l'aide de fiddler pour OBTENIR la demande qui est comme suit
https://127.0.0.1/odata/controllerName('param1','param2')
Dans ma classe de contrôleur, j'ai deux méthodes de contrôleur. Les premières méthodes de contrôleur accepte un seul paramètre et le second accepte deux paramètres. Contrôleur de méthode avec un paramètre fonctionne très bien.Lorsque je demande la méthode du contrôleur avec deux paramètres, Il appelle la méthode du contrôleur avec un paramètre. Je ne suis pas en mesure de comprendre pourquoi il ne reconnaît pas la méthode du contrôleur avec deux paramètres. Ou OData ne prend pas en charge plusieurs paramètres.
Méthode de contrôleur 1
public int controllerName([FromOdataUri] string key);
Méthode De Contrôleur 2
public int controllerName([FromODataUri] string param1, [FromODataUri] string param2);
OriginalL'auteur Varun Gupta | 2014-04-04
Vous devez vous connecter pour publier un commentaire.
Par le protocole OData, si la clé de l'entité composites de 2 propriétés, puis vous pouvez l'interroger de cette façon:
Mais si vous n'avez pas de clé, alors vous pouvez avoir besoin de Fonctions, qui sont appelés à OBTENIR, et les paramètres sont passés dans l'URL, comme
veuillez vous référer à cet échantillon: https://aspnet.codeplex.com/SourceControl/latest#Samples/WebApi/OData/v4/ODataFunctionSample/
vous pouvez ajouter autant de paramètres que vous le souhaitez.
OriginalL'auteur Tan Jinfu
OData prend un paramètre, mais il peut être un dictionnaire JSON passé comme le corps de la requête. Voir l'exemple ici sous la rubrique "Invoquer l'Action" et autour de Google pour ODataActionParameters de voir comment .NET WebAPI met en œuvre la OData paramètre dictionnaire exigence.
OriginalL'auteur Kyle Hale