【问题标题】:Error not showing when error in razor view aspnet corerazor view asp net core中出现错误时不显示错误
【发布时间】:2017-03-25 21:44:09
【问题描述】:

当我在视图中添加对 viewComponent 的调用并且 viewComponent 不工作时,没有错误消息,剃刀视图跳过渲染中的 viewComponent 并显示其余部分,但我不知道为什么 viewComponent 不工作。

在之前的MVC 5版本中,当razor view出现错误时,抛出异常,如何在aspnet core中进行等价处理?

【问题讨论】:

    标签: c# asp.net-mvc razor asp.net-core


    【解决方案1】:

    此时,如果你尝试访问 /home/index,你会得到一个讨厌的 震惊,什么都不会出现,只是一个空白页。

    在你扯掉头发试图找出原因之前,让我来拯救你 麻烦。您还需要执行两个步骤。

    首先,Core 将尝试在运行时编译 Razor 视图,然后 除非您将设置添加到 project.json 文件,否则会失败。

    "buildOptions": {
      "preserveCompilationContext": true,
      "debugType": "portable",
      "emitEntryPoint": true
    },
    

    preserveCompilationContext 确保各种引用程序集 (例如系统)被保留,以便核心可以编译你的剃刀视图 在运行时。

    其次,您需要告诉您的核心应用程序从哪里开始寻找 内容文件(例如视图)。您可以通过设置 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();
            }
        }
    }
    

    现在再次尝试点击该页面,您将看到呈现的视图。

    【讨论】:

    • 似乎他问的主要(也可能是唯一的)问题是如何显示错误。
    猜你喜欢
    • 1970-01-01
    • 2019-09-26
    • 1970-01-01
    • 2021-12-07
    • 1970-01-01
    • 1970-01-01
    • 2020-04-03
    • 2012-02-05
    • 2021-07-21
    相关资源
    最近更新 更多