当前位置:  开发笔记 > 后端 > 正文

我在ASP.NET MVC中无法做的事情

如何解决《我在ASP.NETMVC中无法做的事情》经验,为你挑选了1个好方法。

是否有一些我不能用ASP.NET MVC做的事情?只有ASP.NET WebForms可以实现的东西,或者使用WebForms 非常容易?

我们考虑将ASP.NET MVC用于新项目.但我想知道,与WebForms相比,是否有一些显而易见的事情我们将无法使用ASP.NET MVC,或者我们将不得不花费大量时间使用ASP.NET MVC.



1> Marc Gravell..:

最大的一个是在表单上使用现有的第三方控件.大多数内置控件很容易重现,但是如果你有一个宠物第三方控件,你可能必须在常规(非MVC)aspx页面上托管它(幸运的是这是支持的).

同样,"网页部分"

另外 - ASP.NET为不同的客户端(移动等)使用不同的html的功能变得......不同; 你不想手工完成这个,但实际上大多数客户现在都使用标准的html,所以它首先不是一个问题.

像通过resx文件的i18n这样的东西需要额外的工作,而不是在vanilla MVC模板中,但样本在互联网上.

有一点...... MVC仅授权MS/ASP.NET; 所以你不能做的一件事(不违反条款,正如我所理解的那样)是在mono/Apache中运行它 - 但是IANAL.

现在考虑一下你可以用MVC做的事情,你不能(或者很难)使用vanilla:

路线而不是页面

自动输入分辨率(动作参数)

适当的HTML控件......

...为简单的AJAX启用jQuery等

关注点分离

可测试性

的IoC/DI

多个模板选项(不仅仅是aspx/ascx)


重新输入分辨率:

public ActionResult Show(string name, int? page, int? pageSize) {...}

将选择"name","page"和"pageSize"关闭(任何)路由,查询字符串或表单 - 这样您就不必花费大量时间来挑选请求值.

重新模板 - aspx/ascx不是唯一的模板选项.例如,见这里 ; 或者,如果你喜欢,你可以写自己的...的观点是不依赖于ASP.NET控件在所有.

推荐阅读
linjiabin43
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有