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

Asp.Net MVC:Server Controls vs Html类来呈现控件?

如何解决《Asp.NetMVC:ServerControlsvsHtml类来呈现控件?》经验,为你挑选了1个好方法。

渲染这样的控件有什么好处:

<% Html.RenderPartial("MyControl") %> or
<%=Html.TextBox("txtName", Model.Name) %>

在Web表单样式:


我理解性能可能是一个原因,因为不需要创建任何对象,但是有可能从代码库中调用它只是为了做一些基本的渲染逻辑可能非常有用.

如果不鼓励这样做,那么你如何处理这种情况:

您需要有条件地使控件可见,并且您不希望用渲染逻辑填充HTML.

你有,但你需要检查Model是否为null,因为否则会引发NullPointerException.

[编辑]当我开始使用ASP MVC时我问过这个问题,现在我看到了像Cristian一样的MVC方式的优点.



1> TheCodeJunki..:

这有几个原因."传统的"ASP.NET WebForm控件封装了MVC应用程序的Controller和View方面,这将违反模式.通过使它们成为扩展方法,您可以获得很好的能力,例如能够将它们与您自己的实现交换出来并将它们交换出来进行测试

Phil Haack(ASP.NET MVC项目经理)在接受Herdering Code播客采访时谈到了这一点

第24集:Phil Haack关于ASP.NET MVC Beta版(第1部分)

http://herdingcode.com/?p=75

第24集:Phil Haack关于ASP.NET MVC Beta版(第2部分)

http://herdingcode.com/?p=82

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