Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
当jQuery可用时,还需要asp.net MVC吗?_Jquery_Asp.net Mvc - Fatal编程技术网

当jQuery可用时,还需要asp.net MVC吗?

当jQuery可用时,还需要asp.net MVC吗?,jquery,asp.net-mvc,Jquery,Asp.net Mvc,我读到了几个切换到asp.net MVC的理由,但没有一个是值得的,imho,回到原点,扔掉你所学到的关于webforms的一切:如何处理回发、视图状态、页面生命周期和。。。所有其他的 MVC想要解决的主要问题—回发—已经可以通过使用jQuery和webmethods的webforms来解决 还是我没有抓住重点,我对asp.net webforms的了解(说实话,几乎没有)很快就过时了?我不同意回发是MVC要解决的主要问题。尽管这当然是一个好处,但MVC主要是关注点分离。这是一种从逻辑上分离和组

我读到了几个切换到asp.net MVC的理由,但没有一个是值得的,imho,回到原点,扔掉你所学到的关于webforms的一切:如何处理回发、视图状态、页面生命周期和。。。所有其他的

MVC想要解决的主要问题—回发—已经可以通过使用jQuery和webmethods的webforms来解决


还是我没有抓住重点,我对asp.net webforms的了解(说实话,几乎没有)很快就过时了?

我不同意回发是MVC要解决的主要问题。尽管这当然是一个好处,但MVC主要是关注点分离。这是一种从逻辑上分离和组织业务逻辑、模型、HTML模板等的好方法。如果您确实需要/想要使用webforms,MVC允许您将它们混合使用。

如果您已经在使用jQuery+webmethods方法,MVC开发应该相当容易学习


你不必扔掉你学到的关于webforms的所有东西。构建优秀代码的许多相同原则仍然适用。

WebForms的目标是,在不了解web技术(HTTP、HTML、CSS、JavaScript等)的情况下,轻松构建交互式网站。但这是有代价的,你必须学习网络表单。我花了两年时间研究和使用WebForms,然后意识到理解web技术更容易、更好

像ASP.NET MVC这样的服务器端框架使处理请求变得非常容易,像jQuery这样的客户端框架使处理HTML和AJAX请求变得非常容易。当WebForms出现在场景中时,这些事情很难做到,但今天很容易做到


我知道你害怕放弃自己的技能,但你应该专注于学习核心web技术。

ASP.NET MVC不是为了避免回发,而是为了分离关注点、单元可测试性,以及更紧密地处理web和原始HTML的无状态本质,而不是ASP.NET web表单的抽象


您对ASP.NET web表单的了解不会过时。ASP.NET MVC目前的市场份额很小,将ASP.NET web窗体应用程序迁移到ASP.NET MVC并不是一项简单的任务。在可预见的未来,这两个框架将很好地共存。

Web表单现在是,将来也会是Web应用程序开发的一种替代方案。MVC也是web应用程序开发的替代方案。每种方法都有各自的优点和不同的用途。与任何工具一样,使用适合作业的工具

我喜欢MVC,因为它的设计考虑了可测试性和可插入性。Web表单对我来说有点太死板了,不便于测试

我也更喜欢完全控制HTML,虽然.NET4引入了一些改进,但我仍然不喜欢服务器控件编写可能不可靠的标记

WebForms是HTTP和HTML的抽象层,旨在让人们能够快速启动和运行web应用程序,通常是在VB6等非web背景下

MVC回到了基础,并没有假装HTTP和HTML不存在,而是利用它们,让开发人员能够更好地控制它们的使用方式