C# WebApi文档无法识别端点

C# WebApi文档无法识别端点,c#,asp.net,asp.net-mvc,asp.net-web-api,asp.net-web-api-helppages,C#,Asp.net,Asp.net Mvc,Asp.net Web Api,Asp.net Web Api Helppages,我有多个控制器端点,其路由如下: [Route("api/myobjects/action1/action2/{objectIds}")] 它们都有这样的方法签名(省略了访问修饰符和返回类型): 自定义modelbinder允许我像这样发布到端点: ../api/myobjects/action1/action2/1,2,3 这太棒了!但是,帮助页面文档生成过程会忽略所有这些方法 如果像这样删除modelbinder属性: Post(int[] objectIds) 它仍然不起作用。仅当我

我有多个控制器端点,其路由如下:

[Route("api/myobjects/action1/action2/{objectIds}")]
它们都有这样的方法签名(省略了访问修饰符和返回类型):

自定义modelbinder允许我像这样发布到端点:

../api/myobjects/action1/action2/1,2,3
这太棒了!但是,帮助页面文档生成过程会忽略所有这些方法

如果像这样删除modelbinder属性:

Post(int[] objectIds)
它仍然不起作用。仅当我将
[FromUri]
添加到参数并从路由属性中删除
{objectIds}
时,它才会起作用:

Post([FromUri] int[] objectIds)
但这会生成一个不需要的uri,如下所示:

../api/myobjects/action1/action2?objectIds[0]={objectIds[0]}&objectIds[1]={objectIds[1]}


如何获取帮助页面文档过程来识别我的端点?

您需要像这样更新HelpPageConfig SetActualResponseType(typeof(ObjectType),“Object”,“MethodName”)


使用此选项,您可以在web api中为相应的URL启用帮助。您需要更新HelpPageConfig,如 SetActualResponseType(typeof(ObjectType),“Object”,“MethodName”)


使用此选项,您可以在web api中为各个URL启用帮助。遗憾的是,这对我遇到的问题没有任何影响。我尝试了config.SetActualResponseType和config.SetActualRequestType。如果您使用的是web api 2,您可以安装一个nuget软件包来显示帮助页面,它将自动找到端点,很抱歉回复延迟,这对我遇到的问题没有影响。我尝试了config.SetActualResponseType和config.SetActualRequestType。如果您使用的是web api 2,您可以安装一个nuget软件包来显示帮助页面,它将自动找到端点,很抱歉,回复延迟
../api/myobjects/action1/action2?objectIds[0]={objectIds[0]}&objectIds[1]={objectIds[1]}