如何在剃刀视图页面导入命名空间?
当前回答
我认为为了在剃刀视图中导入命名空间,你只需要添加以下方式:
@using XX.YY.ZZ
其他回答
为图书馆
@using MyNamespace
为模型
@model MyModel
第一种方法是在.cshtml文件中使用@using语句,只将命名空间导入当前文件,第二种方法是:
在“网络”中。在你的项目的“Views”目录下的config文件(注意它不是主web. config)。配置在项目的根目录),找到这个部分:
<system.web.webPages.razor>
<pages pageBaseType="System.Web.Mvc.WebViewPage">
<namespaces>
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
.
.
<!-- etc -->
</namespaces>
</pages>
</system.web.webPages.razor>
你可以像这样添加你的自定义命名空间:
<add namespace="My.Custom" />
这将添加命名空间到所有的.cshtml(和/或.vbhtml)文件; 你也可以从这里改变视图继承,比如:
<pages pageBaseType="My.Custom.MyWebViewPage">
的问候。
更新:感谢@Nick Silberstein对区域的提醒!他说:
如果您在一个区域内工作,则必须在Web中添加名称空间。在“/ regions /<AreaName>/Views/”下配置 /视图/
在ASP。你可以用这段代码在Global.asax.cs中导入一个命名空间到你所有的razor视图
Microsoft.WebPages.Compilation.CodeGeneratorSettings.AddGlobalImport("Namespace.Namespace");
我希望在RTM中可以通过Web完成。配置部分。
“使用MyNamespace”工作在MVC3 RTM。希望这能有所帮助。
对于命名空间和库
@using NameSpace_Name
为模型
@model Application_Name.Models.Model_Name
对于在Razor页面上迭代列表(你必须使用foreach循环访问列表项)
@model List<Application_Name.Models.Model_Name>
@foreach (var item in Model)
{
<tr>
<td>@item.srno</td>
<td>@item.name</td>
</tr>
}
推荐文章
- 如何在没有任何错误或警告的情况下找到构建失败的原因
- ViewBag, ViewData和TempData
- 在ASP中设置Access-Control-Allow-OriginNet MVC -最简单的方法
- 如何在剃刀视图上引用.css文件?
- 有没有办法注释掉.ASPX页面中的标记?
- jQuery为ajax请求返回“parsererror”
- 不带查询字符串获取url
- 表达式树不能包含使用可选参数的调用或调用
- 类型或命名空间名称在命名空间“System.Web.Mvc”中不存在
- <%$, <%@, <%=, <%#…怎么回事?
- 无法找到适合特定区域性或中性区域性的任何资源
- 转换JSON字符串到JSON对象c#
- IIS7部署-重复` system.web。扩展/脚本/ scriptResourceHandler”部分
- 如何用msbuild发布Web ?
- 为什么使用HttpClient进行同步连接