当我在视图中的viewComponent上添加一个调用并且viewComponent不工作时,没有错误消息,剃刀视图跳过渲染中的viewComponent并显示其余部分,但我不知道为什么viewComponent没有工作
在以前的版本MVC 5中,当razor视图出现错误时,异常是throw,如何在aspnet核心中创建等效的?
答案 0 :(得分:0)
此时,如果您尝试转到/ home / index,您将会感到讨厌 震惊,什么都不会出现,只是一个空白页。
在你撕掉你的头发试图找出原因之前,让我救你 麻烦。您还需要采取两个步骤。
首先,Core将尝试在运行时编译剃刀视图 除非您向project.json文件添加设置。
"buildOptions": {
"preserveCompilationContext": true,
"debugType": "portable",
"emitEntryPoint": true
},
preserveCompilationContext确保各种引用程序集 (例如系统)被保留,以便Core可以编译您的剃刀视图 在运行时。
其次,您需要告诉您的Core应用程序从哪里开始寻找 内容文件(例如视图)。您可以通过设置来指定 Program.cs中的UseContentRoot()选项。
using System.IO;
using Microsoft.AspNetCore.Hosting;
namespace ConsoleApplication
{
public class Program
{
public static void Main(string[] args)
{
var host = new Microsoft.AspNetCore.Hosting.WebHostBuilder()
.UseKestrel()
.UseContentRoot(Directory.GetCurrentDirectory())
.UseStartup<Startup>()
.Build();
host.Run();
}
}
}
现在尝试再次点击页面,您将看到渲染的视图。