“您可以将现有的 ASP.NET 功能与 ASP.NET MVC 框架一起使用,例如嵌套母版页、内联表达式 (<%= %>)、声明性服务器控件、模板、数据绑定、本地化等。” - MSDN
这是否意味着我们可以在 MVC 中使用 ASP.net Web 表单中的服务器控件?
谢谢,
“您可以将现有的 ASP.NET 功能与 ASP.NET MVC 框架一起使用,例如嵌套母版页、内联表达式 (<%= %>)、声明性服务器控件、模板、数据绑定、本地化等。” - MSDN
这是否意味着我们可以在 MVC 中使用 ASP.net Web 表单中的服务器控件?
谢谢,
任何回发到服务器的控件都不适用于 MVC,因为 MVC 不使用相同的机制或页面循环来回发到同一页面。而是 MVC 页面被路由到一个新的 URL,因此没有像 Web 表单那样的“持久”页面的概念。
有很多关于如何在 MVC 框架中处理这类事情的讨论,因为毫无疑问,Web 窗体使许多事情变得非常容易。目前在 MVC 中,最接近“控件”的是 Mvc HTML Helper 类,它们提供简单(但不是非常可配置)的控件呈现。
使用 MVC 与 Web 表单充满了权衡(双向),毫无疑问,您最终会在 MVC 中编写更多标记代码来弥补您在使用 Web 表单时所失去的。优点是您对渲染有更多的控制权,并且不受有时复杂的回发页面管道周期的约束。
对于语法,
剃刀:
<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>
如果您想查看更多信息,请查看以下链接
希望对你有帮助。