ASP.NET MVC 4 自定义 HTML Helpers 文件夹位置
Posted
技术标签:
【中文标题】ASP.NET MVC 4 自定义 HTML Helpers 文件夹位置【英文标题】:ASP.NET MVC 4 custom HTML Helpers folder location 【发布时间】:2013-01-29 11:51:32 【问题描述】:我开始使用带有 Razor 语法的 ASP.NET MVC 4 框架开发应用程序。我想知道我应该在哪里(文件夹位置)创建我的 html Helper 类。最佳实践。
例如:
VisualStudio 解决方案 控件 HTML HtmlHelperClass.vb 型号 观看次数【问题讨论】:
【参考方案1】:使用this。要使用 Razor 中的“@helper”功能,您需要将 CSHTML 文件放在应用程序的 App_Code 文件夹中。 ASP.NET MVC 3 中没有“Views/Helpers”文件夹。ScottGu 的博客文章是在该功能完全实现之前写的,其中一些注释不再完全准确。
要调用您编写的“@helper”,您必须在其中包含文件名和助手的名称。例如,如果你有这个助手:
~/App_Code/MyHelper.cshtml
还有这个内容:
@helper ShowStuff(string stuff)
<p>@stuff</p>
那你这样称呼它:
@MyHelper.ShowStuff("some stuff!")
【讨论】:
我在部署到不允许 App_Code 文件夹的托管服务提供商时遇到了问题,因此我目前根本无法使用这些帮助程序。 ***.com/a/16057766/678338 @SeanMill 您可以在视图顶部添加它“@using UtilsProject.Helpers”并使用您的助手“@Html.MyCustomHelper()”。在我的应用程序中,我将新项目添加到名为 UtilsProject 的解决方案中,其中我有我的自定义助手。 不确定在任何视图中使用是否真的是个好主意,这不就是我们一直在 Html 上使用扩展的原因吗?【参考方案2】:你的结构很好。
我会用实用程序文件夹更改 Html 文件夹。 您可以在那里添加所有类型的助手。
控制器 型号 观看次数 实用程序 框架(这可能对您的应用程序的引导很有用)实际上没有修复“最佳实践”。只要确保你可以在明显的地方找到你的课程。如果不改造。
【讨论】:
以上是关于ASP.NET MVC 4 自定义 HTML Helpers 文件夹位置的主要内容,如果未能解决你的问题,请参考以下文章