如何添加“默认使用”到所有cshtml页面?
我正在创建我的第一个 MVC.Net 应用程序,我发现自己几乎在每个页面上都包含 @using Gideon.Core.Mvc;
。 是否可以默认将其添加到所有页面?
在 Asp.Net 中,我可以将控件的默认内容添加到 web.config 中,希望它可以为 MVC 完成。网络也是如此。
I'm creating my first MVC.Net application and I find myself including @using Gideon.Core.Mvc;
on almost every page. Is it possible to add it by default to all pages?
In Asp.Net I'm able to add default stuff for controls to the web.config, hopefully it can be done for MVC.Net as well.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
您可以将它们添加到
Views/Web.config
的
部分。这是默认值:
You can add them in the
<system.web.webPages.razor>
section inViews/Web.config
.Here is the default:
将它们添加到
Views/Web.config
中。将您的名称空间添加到底部:Add them in the
Views/Web.config
. Add your namespace to the bottom:对于 .Net Core 用户,如果您创建普通 Web 项目,则可以通过
在 Pages 文件夹中添加文件来导入默认命名空间。
并在其中定义默认名称空间。
For .Net Core Users if you create a vanilla web project you can import default namespaces by adding the
File within your Pages folder.
And define your default namespaces within.
由于这个问题在谷歌上的排名很高,所以让我添加一个区域兼容的替代解决方案。
创建一个名为
PreApplicationStart
的新类(或您想要的任何其他名称)。在
Properties\AssemblyInfo.cs
中添加以下行:这样,命名空间在项目中的每个视图(包括区域内的视图)中都可用。将命名空间添加到
web.config
有一个缺陷,如果您使用区域,则最终必须将命名空间添加到每个区域中的每个web.config
文件。Since this question is high on google, let me add an alternative solution which is area compatible.
Create a new class called
PreApplicationStart
(or any other name you want).In
Properties\AssemblyInfo.cs
add following line:With this the namespace is available in every view in the project (including views within areas). Adding the namespace to
web.config
has this flaw, that if you use areas, you end up having to add the namespace to everyweb.config
file in each area.