Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在一个应用程序中使用razor运行NancyFx和Mvc5?_C#_Asp.net Mvc_Razor_Owin_Nancy - Fatal编程技术网

C# 如何在一个应用程序中使用razor运行NancyFx和Mvc5?

C# 如何在一个应用程序中使用razor运行NancyFx和Mvc5?,c#,asp.net-mvc,razor,owin,nancy,C#,Asp.net Mvc,Razor,Owin,Nancy,我有基于NancyFx(1.4.3)和Owin的工作应用程序。现在我想删除NancyFx并用Mvc5替换(增量)。这些小步骤使我能够在将来将整个项目移植到asp.net核心中。:) 我可以通过NancyFx指定的路径到达MVC。我的Owin启动配置如下所示: public void Configuration(IAppBuilder app) { app .MapSignalR() .UseNancy(o => {

我有基于NancyFx(1.4.3)和Owin的工作应用程序。现在我想删除NancyFx并用Mvc5替换(增量)。这些小步骤使我能够在将来将整个项目移植到asp.net核心中。:)

我可以通过NancyFx指定的路径到达MVC。我的Owin启动配置如下所示:

public void Configuration(IAppBuilder app)
{
    app
        .MapSignalR()
        .UseNancy(o =>
        {
            o.PerformPassThrough = ctx =>
            {
                return ctx.Request.Path.StartsWith("/test");
            };
        })
        .UseStageMarker(PipelineStage.MapHandler)
    ;
}
由于这一点,我可以像往常一样运行我的应用程序。mvc控制器只处理“测试”路径:

public class TestController : Controller
{
    [Route("test")]
    public ActionResult Index()
    {
        return View();
    }
}
我的主要问题是Razor的配置如下:

MVC呈现的视图失败,原因是:

The view at '~/Views/Home/Index.cshtml' must derive from WebViewPage, or WebViewPage<TModel>.
“~/Views/Home/Index.cshtml”处的视图必须派生自WebViewPage或WebViewPage。
如何从MVC的一个文件夹和NancyFx的第二个文件夹配置和运行视图?

视图页面应继承自
System.Web.MVC.WebViewPage
。确保
Index.cshtml
包含以下行:

@inherits System.Web.Mvc.WebViewPage

该项目还应参考
System.Web.Mvc
程序集。

请将
Index.cshtml
的第一行添加到帖子中好吗?您是否尝试将
@inherits System.Web.Mvc.WebViewPage
添加到
索引.cshtml