.net MVC,处理json和Areas

时间:2010-03-12 17:16:25

标签: javascript asp.net-mvc asp.net-mvc-areas

当不使用来自客户端的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>

虽然无论我在何处放置视图/控制器它都能正常工作,但我想知道这样做是否更优雅。

1 个答案:

答案 0 :(得分:1)

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