为什么ASP.NET MVC回归到经典ASP标记?

时间:2011-08-19 21:51:09

标签: asp.net html asp.net-mvc

我正在学习ASP.Net MVC,我非常喜欢MVC给出的关注点,以及模型/视图/控制器开发理论!

然而,我有旧的< %%>的创伤后闪回。 HTML!我很难解决这个代码和调试的可怕程度!

为什么MS dev的回归到了那种编码风格?

似乎ASP.Net控件在HTML标记方面向前迈进了一步,但显然我错过了更大的难题。

有人可以帮我理解我们从< %%>中获得的好处ASP.Net WebForm风格的经典ASP样式标记?

由于

4 个答案:

答案 0 :(得分:1)

如果你不喜欢这种语法,那么我建议你使用Razor视图引擎(ASP.NET MVC 3),你使用@而不是<%: %>

我猜他们为什么使用相同的语法,因为当他们最初开发ASP.NET MVC时,编写的代码可能更少,并且许多用户不必学习新的语法。现在已经有一段时间了,他们引入了一种新的语法,Razor视图引擎更加清晰。

答案 1 :(得分:1)

您可以将其替换为另一个ViewEngine,使您可以更灵活地使用语法。 MVC 3现在附带Razor作为另一种预先打包的选项。要为您选择正确的View Engine,请查看this视频。

答案 2 :(得分:0)

我认为基本的想法是,如果框架促进了该视图与底层数据和业务逻辑之间关注点的良好分离,那么为您的视图提供动态标记样式是可以的。在糟糕的旧ASP时代,没有任何强制执行甚至促进这种分离,因此我们最终得到了许多非常非常混乱的代码。

答案 3 :(得分:0)

如果你发现自己偏离了偶然的循环,如果...然后,你的标记中的对象属性访问,这应该只生成html输出,那么你可能正在使用错误的工具来完成工作

很多人喜欢像这样的敏捷脚本给你。它诞生于铁轨上的红宝石嗡嗡声中。你可以使它编译和类型安全,你可以一步一步,所以编译“代码隐藏日”语言的所有优点。

as asp.net/web表格。生命周期?查看状态?不,谢谢!