0

当不使用从客户端处理 JsonResults 的 url 的区域时,这并不是一件很痛苦的事情,通常您可以将 url 硬编码到您的 json 调用中并摆脱它。当您有不同的区域并且您不想在将控制器(及其视图)从一个区域移动到另一个区域时更新所有链接时,就会出现问题。我对通过在每个视图中都有这段代码来处理这种情况的方式不太满意:

<script type="text/javascript">
    var ControllerActions = {
        JsonSearch: '<%= Url.Action("JsonSearch") %>/',
        JsonDelete: '<%= Url.Action("JsonDelete") %>/',
        Edit: '<%= Url.Action("Edit") %>/',
        Delete: '<%= Url.Action("Delete") %>/'
    }
</script>

虽然无论我将视图/控制器放在哪里都可以工作,但我想知道是否有更优雅的方法来做到这一点。

4

1 回答 1

1

我个人喜欢你上面采取的方法。最终,如果您希望控制器和操作具有移动性,最好的办法是依赖 ASP.NET MVC 中可用的路由生成器(例如您的 Url.Action)。我唯一的其他建议是将其拉入部分/可重用控件中,以便归结为代码中的一行。

于 2010-03-12T18:37:50.877 回答