Asp.net web api 属性路由与约定

Asp.net web api 属性路由与约定,asp.net-web-api,asp.net-web-api-routing,Asp.net Web Api,Asp.net Web Api Routing,玩Web.API 2.0的东西-特别是属性路由。您可以按约定使用属性路由和1.0路由的状态。。。但这两个人似乎在一起打得不太好。例如,给定以下两种方法: public override HttpResponseMessage PutModel(SampleForm form) [HttpPut("approvesampleform/{form}")] public string ApproveSampleForm([FromBody]SampleForm form) 而我可以调用http:/

玩Web.API 2.0的东西-特别是属性路由。您可以按约定使用属性路由和1.0路由的状态。。。但这两个人似乎在一起打得不太好。例如,给定以下两种方法:

public override HttpResponseMessage PutModel(SampleForm form)

[HttpPut("approvesampleform/{form}")]
public string ApproveSampleForm([FromBody]SampleForm form)
而我可以调用
http://localhost/api/sampleform/approvesampleform
很好,a
PUT
to
http://localhost/api/sampleform/
生成一个
发现与请求匹配的多个操作
错误

如果一个方法被标记为属性routing,它是否会被约定忽略?这将是理想的。。。但我在文档中看不到实现这一点的任何方法

注意:我没有看到asp.net-web-api-2标记。也许有超过1500名代表的人可以创建它?

对,RC(候选版本)没有常规路由无法访问属性化控制器/操作的逻辑。这一变化发生在RC之后。您正在尝试的场景在后RC位中运行良好

可能您提到的文档不是很清楚,但我认为它们的意思是,属性化和基于约定的控制器可以并行工作,而不是在同一个控制器中混合属性化和常规语义


目前,您可能只能对上面提到的控制器使用属性路由。

我在哪里可以找到这些位(如果可以的话)。我正在使用RC1版本。我会尽快通知您。