可以在ASP.net MVC中使用ASP.net页面吗?

时间:2013-09-24 06:01:51

标签: asp.net-mvc

“您可以将现有ASP.NET功能与ASP.NET MVC框架一起使用,例如嵌套母版页,内联表达式(<%=%>),声明性服务器控件,模板,数据绑定,本地化,等等。“ - MSDN

这是否意味着我们可以在MVC中的ASP.net Web表单中使用服务器控件?

谢谢,

2 个答案:

答案 0 :(得分:2)

回发到服务器的任何控件都不能与MVC一起使用,因为MVC不使用相同的机制或页面循环来回发到同一页面。相反,MVC页面被路由到一个新的URL,所以没有“持久”页面的概念,就像Web表单一样。

有很多关于如何在MVC框架中处理这类事情的讨论,因为毫无疑问,Web Forms使很多事情变得非常简单。目前在MVC中,与“控件”最接近的是Mvc HTML Helper类,它们提供简单(但不是非常可配置)的控件呈现。

使用MVC与Web表单充满了折衷(双向),毫无疑问,您最终会在MVC中编写更多标记代码,以弥补您在Web窗体中丢失的内容。优点是你对渲染有很多的控制权,并且与回发的有时复杂的页面管道循环无关。

答案 1 :(得分:0)

对于语法,

剃刀:

<ul>
@for (int i = 0; i < 10; i++) {
<li>@i</li>
}
</ul>

mvc中的Web表单(您也可以使用它)

<ul>
<% for (int i = 0; i < 10; i++) { %>
<li><% =i %></li>
<% } %>
</ul> 

如果您想查看更多信息,请查看以下链接

希望能帮到你。

Using ASP.NET Server Controls in MVC?