首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Razor中调用部分视图

在Razor中调用部分视图
EN

Stack Overflow用户
提问于 2017-02-22 19:19:55
回答 2查看 3.3K关注 0票数 2

我有个问题似乎要把我逼疯了。如何从另一个主页面中提取部分视图到我的主页(这与视图无关,等等)在另一个文件夹里吗?我只想说:

@Html.ThemedPartial(Model, "Latest")

(这是来自Umbraco中清晰的博客)。然而,我不知道如何做到这一点,因为我不知道使用什么指令包括,等等?

有什么简单的方法吗?

我收到以下错误:

编译器错误消息: CS1061:'System.Web.Mvc.HtmlHelper>‘不包含'ThemedPartial’的定义,也找不到接受'System.Web.Mvc.HtmlHelper>‘类型的第一个参数的扩展方法'ThemedPartial’(您缺少使用指令还是程序集引用?)

它引用了@Html.ThemedPartial(Model, "Latest")上的源错误

我也尝试了@Html.Partial("~/App_Plugins/Articulate/Themes/MyTheme/Views/Partials/Latest.cshtml", Model)而不是@Html.ThemedPartial(Model, "Latest")而没有运气。我得到了以下信息:

Umbraco.Web.Mvc.ModelBindingException:无法将源内容类型Umbraco.Web.PublishedContentModels.Index绑定到模型类型Articulate.Models.IMasterModel。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-02-24 03:05:31

我想出来了:

代码语言:javascript
复制
@Html.Partial("~/Views/Partials/Recent.cshtml", Model)
票数 3
EN

Stack Overflow用户

发布于 2017-02-23 20:04:39

当您查看有节源码时,您将看到ThemedPartial只是一个扩展方法,它执行以下操作:

代码语言:javascript
复制
var path = PathHelper.GetThemePartialViewPath(model, partialName);
return html.Partial(path, viewModel, viewData);

其中,GetThemePartialViewPath返回视图的相对路径。

如果正确地设置了Latest.cshtml的@model声明,下面的内容应该可以工作

@Html.Partial("~/App_Plugins/Articulate/Themes/MyTheme/Views/Partials/Latest.cshtml", Model)

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

https://stackoverflow.com/questions/42400418

复制
相关文章

相似问题

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