在ASP .NET MVC 5中预编译Razor视图

15

我有一个ASP .Net MVC5网站,性能存在问题,我希望在部署网站到IIS时预编译Razor视图并排除它们。我按照这篇文章中所述步骤操作,但出现错误:找不到RazorGenerator.targets文件。实际上,我检查了包文件夹,没有找到该文件。 你知道为什么该dll文件没有在包文件夹中找到吗?RazorGenerator.MvcRazorGenerator.MsBuild 已经正确安装。 提前感谢。


为什么不直接使用静态HTML文件呢? - Mark Homer
我的观点并不是静态的,我从数据库中检索了一些数据。 - Bilel Chaouadi
1个回答

21

您不需要使用RazorGenerator。在发布时,只需在“设置”选项卡下的“文件发布选项”中设置选项为“发布期间预编译”。单击“配置”,然后勾选“将所有输出合并到单个程序集中”。给它一个唯一的名称,通常是像[ProjectName].Precompiled这样的名称。


2
请问您能否解释一下在使用WebDeploy时我可以在哪里找到这些设置? - Bilel Chaouadi
1
它在发布对话框中。左侧有一个设置选项卡,然后在您选择要部署的配置下面是一个带有“文件发布选项”的向下箭头按钮。 - Chris Pratt
17
在正常的构建过程中是否有办法编译视图,而不是在发布时编译? - Russell Horwood
3
@NineTails 这应该会有所帮助。 - Neeraj Gulia
3
我也在stackoverflow上有一个问题:https://stackoverflow.com/questions/48715367/how-can-i-get-precompiled-razor-files-when-deploying-net-web-application,与这个答案相关。确保未选中“允许预编译站点更新”复选框,以获取预编译视图。 - John Dover
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接