asp.net-mvc - 使用 ASP.NET MVC Razor 的自定义控件

标签 asp.net-mvc asp.net-mvc-3 razor

如何在 ASPNET.MVC Razor 中使用自定义控件?

我想在 Razor View 上使用自定义控件。例如:

<mycontrols:something>@Model.MyVar</mycontrols:something>

或者
<mycontrols:something myattribute="@Model.MyVar" />

请注意,我的目标是仅使用从 MvcControl 派生的少数控件,仅用于琐碎的重复 ui 内容。

我试图找出类似于@Register 的语法写在 View 的顶部,但没有任何成功。

然后我去了web.config,添加
<pages>
   <controls>
      <add tagPrefix="mycontrols" namespace="mynamespace" assembly="myassembly"/>
   </controls>
</pages>

但看起来自定义控件在渲染中被忽略了。

有人可以帮忙吗?

...可能有点过时了,但有时自定义控件也可能有助于使您的代码更清晰!

最佳答案

Razor 语法根本不支持控件的概念。如果要使用控件,则必须使用 ASPX (WebForms) 语法。

但是,推荐的 MVC 模式是使用 html 辅助函数或部分 View 。在 Razor 中,您还可以使用 @helper快速帮助函数的语法。

关于asp.net-mvc - 使用 ASP.NET MVC Razor 的自定义控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4582866/

相关文章:

asp.net-mvc - 如何在 ASP.Net MVC 中对自定义 ActionFilter 进行单元测试

asp.net-mvc - 我正在寻找有关自定义 MVC3 编辑器模板的高级资源

Razor 计数项目

asp.net - MVC3 Html 编辑器助手显示旧模型值

c# - 在 C# ASP.NET View 中动态嵌入 Html 属性

asp.net - 在 mvc View 中使用 appsetting 键和字符串

.net - 如何缓存css,图像和js?

c# - 在 Controller 的 MVC **外部**中模拟 HttpContext

asp.net-mvc-3 - 部署在Azure上的MVC应用程序无法连接到SQL Azure数据库,但可以通过SSMS连接

asp.net-mvc - HtmlHelper 扩展方法的 HTML 编码