禁用 Razor View 编译
Posted
技术标签:
【中文标题】禁用 Razor View 编译【英文标题】:Disable Razor Viewcompilation 【发布时间】:2018-12-27 07:51:45 【问题描述】:我当前的项目使用剃须刀页面 (.cshtml)。由于 JS 到目前为止很大,我决定将 javascript 分成 js 文件到 views 文件夹中。
示例: 视图\主页\登录.cshtml Views\Home\Login.js
我无法将它们移动到 wwwroot,因为它们使用了大量本地化资源以及会话值。
现在的问题是,出于某种未知原因,我的项目自动将这些视图编译为已编译的views.dll。这是不受欢迎的行为。 我无法使用 .csprj 中的错误标记禁用此功能。
如何编译我的项目,在不编译页面的情况下发布它?
【问题讨论】:
【参考方案1】:我认为您应该可以使用脚本包并将其添加到您的_Layout.cshtml
共享视图中,如下所示:
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>@ViewBag.Title - Restaurantes</title>
@Styles.Render("~/Content/css")
@Scripts.Render("~/bundles/modernizr")
@Scripts.Render("~/bundles/YOUR_BUNDLE")
@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/bootstrap")
@RenderSection("scripts", required: false)
</head>
您可以在此处阅读有关捆绑包的更多信息:http://www.tutorialsteacher.com/mvc/scriptbundle-mvc
【讨论】:
以上是关于禁用 Razor View 编译的主要内容,如果未能解决你的问题,请参考以下文章
禁用基于 UserRole Razor Pages 的输入字段
如何防止在 ASP.NET Core 的 Razor 视图 HTML 中禁用或只读输入字段的模型绑定?