首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >视图必须派生自WebViewPage或WebViewPage<TModel>

视图必须派生自WebViewPage或WebViewPage<TModel>
EN

Stack Overflow用户
提问于 2011-11-15 04:13:20
回答 5查看 55.8K关注 0票数 73

我正在关注Justin Slattery's Plugin Architecture tutorial,并试图使其适用于Razor,而不是WebForm视图。

其他一切(控制器、插件程序集加载等)似乎都没问题。但是,我无法让嵌入式Razor视图正常工作。当我试图浏览到"HelloWorld/Index“时,我得到了以下错误:

代码语言:javascript
复制
The view at '~/Plugins/MyProjectPlugin.dll/MyProjectPlugin.Views.HelloWorld.Index.cshtml' must derive from WebViewPage or WebViewPage<TModel>.

异常是由System.Web.Mvc.RazorView.RenderView(ViewContext viewContext, TextWriter writer, Object instance) +262引发的

如果需要,我可以包含完整的堆栈跟踪。

有人能告诉我我可能做错了什么吗?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2011-11-15 04:19:29

你可以试试更适合剃刀的following blog post

但是为了回答您的问题,由于您现在从非标准位置提供视图,因此不再有适用的~/Views/web.config文件,并允许您为您的剃刀视图指定基本类型。因此,您可能需要在每个剃刀视图的顶部添加以下内容:

代码语言:javascript
复制
@inherits System.Web.Mvc.WebViewPage
@model ...
票数 159
EN

Stack Overflow用户

发布于 2015-01-06 07:18:15

我也遇到了同样的问题,因为我没有提交包含razor库的packages文件夹。然后我添加了这个包,它可以工作,但在重建时它就坏了。然后我关闭了nuget在构建时自动运行,现在它工作得很好。对我来说,nuget把事情搞得一团糟。

票数 1
EN

Stack Overflow用户

发布于 2015-06-01 21:15:48

今天,当更新一个旧的mvc3项目到版本4时,我得到了这个错误,对我来说,解决方案是删除<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">部分中的appliesTo="v2.0.50727"属性。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8127462

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档