关于 asp.net:MVC 自定义控件?

MVC Custom Control?

我正在尝试弄清楚如何在 ASP.NET MVC 2 中使用/创建自定义控件。

我之前创建了一个自定义控件并编译了它(ccontrol.dll),该控件呈现了一个 div、文本框和一个按钮,一些 javascript 以便在网站上发表评论。它可能是一个静态的 aspx 页面,我想让我的访问者添加评论。然后,我将控件从工具栏拖到 aspx 页面并运行它,然后它将呈现网页上所需的所有代码,包括从数据源获取数据并在 div 中显示该数据。用户也可以只输入评论并按下按钮将其保存到数据源。

这可以转换为 MVC 2 吗?任何涵盖自定义控件和 MVC 2 的好教程? (理想情况下,如果控件可以制作成 .dll 文件,我可以在以后的网页上重复使用)

如何以 mvc 方式编写自定义控件?关于这个主题有什么好的教程吗?


您不能按照正常的 asp.net 样式设计自定义控件,因为在 Mvc 中没有 ViewState,也没有服务器端控件事件。数据通过模型绑定过程返回到服务器。事实上,渲染和填充数据是在单独的代码段中处理的,这使得在 Mvc 中实现复杂的服务器控件变得困难。
然而,我开发了一个理论,以及一个工具集,以便在 Mvc 中轻松自定义控件,完全符合 Mvc 范式的精神,即保持视图和控制器之间的关注点分离。请参阅我的 Codeplex 项目。在那里,您会在我的博客上找到指向文档和教程的指针。如果您需要帮助,请随时与我联系。


不,不能在 ASP.NET MVC 中使用自定义控件。你需要用MVC方式重写