C# 有没有办法更改.NET MVC WebApi操作的默认ActionVerb?
根据,在动作选择一节中,它指出:C# 有没有办法更改.NET MVC WebApi操作的默认ActionVerb?,c#,asp.net-mvc,asp.net-web-api,C#,Asp.net Mvc,Asp.net Web Api,根据,在动作选择一节中,它指出: 如果以上都没有,则该方法支持POST 有没有办法更改此默认行为以将HttpGet用作操作的默认ActionVerb?您链接的文档引用了一个IHttpActionSelector。SelectAction方法是操作选择的来源,而ApiControllerActionSelector是默认实现 如果您查看,您可以看到确实是ApiControllerActionSelector类。如果查看该ApiControllerActionSelector实现,您可以看到它认为每
有没有办法更改此默认行为以将HttpGet用作操作的默认ActionVerb?您链接的文档引用了一个
IHttpActionSelector。SelectAction
方法是操作选择的来源,而ApiControllerActionSelector
是默认实现
如果您查看,您可以看到确实是ApiControllerActionSelector
类。如果查看该ApiControllerActionSelector
实现,您可以看到它认为每个方法都是有效路由。然后,当您查看ReflectedHttpActionMethod时,所有其他用于识别替代动词的文档化策略都失败了
因此,为了回答您的问题,您可以编写一个新的IHttpActionSelector
实现,它返回一个HttpActionDescriptor
,该描述符使用的默认行为与您在ApiControllerActionSelector
中找到的不同
或者,您可以应用[HttpGet]
属性和/或使用“Get”前缀命名操作并将其命名为day