这个问题在这里已经有一个答案:

我正在与Raven DB和MVC 2一起玩耍,默认情况下,Raven中的ID将为“建议/1234”,对于一个称为建议的实体。

当我这样写时,这会导致路由问题:

<%: Url.Action("Delete", "Suggestion", new { id = suggestion.Id }) %>

URL将为/建议/删除/建议/14337,该URL无法正常工作。

可以在路由中解决,还是我必须更改乌鸦中的ID格式?我该怎么做?

有帮助吗?

解决方案

改变您的路线 {controller}/{action}/{id}{controller}/{action}/{*id}. 。这被称为“接球”路线;更多细节 在MSDN上.

或者,您可以通过 id 作为查询参数。

其他提示

默认情况下,您将无法编码前向斜杠。

将ID更改为建议_1234或尝试使用此设置:

<uri> 
    <schemeSettings>
        <add name="http" genericUriParserOptions="DontUnescapePathDotsAndSlashes" />
    </schemeSettings>
</uri>

我没有检查配置设置是否有效。而且我现在做不到,因为足球从5分钟开始。

URL中的URL编码斜线

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top