覆盖异步方法(RazorView RenderAsync)

时间:2016-02-10 12:28:25

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

我的代码(asp.net 5,mvc 6,rc-1):

public class MyView: RazorView
{

    // Constructor passing everything to base class

    public async override Task RenderAsync(ViewContext context)
    {
        context.Writer.WriteLine("");
        context.Writer.WriteLine("<!-- View: {0} -->", Path);

        await base.RenderAsync(context);

        context.Writer.WriteLine("");
        context.Writer.WriteLine("<!-- View: {0} end -->", Path);
    }
}

然而,这个覆盖改变了某种方式执行被覆盖的方法,导致PartialViews中的所有错误在响应已经开始后执行(因此无法执行开发人员异常页面= 502坏网关)。

我的目标是用注释来装饰所有视图,指出它是什么文件,就像角度js一样。

编辑: 上面的代码片段通常有效(所有视图都用注释装饰) - 只有在抛出异常时才会出现问题。

0 个答案:

没有答案