【问题标题】:Can I use DisplayTemplates in Controller我可以在控制器中使用 DisplayTemplates
【发布时间】:2010-12-17 08:27:44
【问题描述】:
我在 DisplayTemplates 文件夹中有一个局部视图 (Company.ascx)。我可以使用以下结构<% Html.DisplayFor(m => m.Company) %> 在另一个视图中呈现其内容。
我可以渲染并以某种方式从控制器中获取 Html 字符串吗?我需要它,因为我使用的是 Ajax,结果必须返回 html(公司结构)。
【问题讨论】:
标签:
asp.net-mvc
partial-views
webforms-view-engine
【解决方案1】:
如果您的控制器操作需要返回执行此显示模板的 HTML 结果,您可以简单地指明此模板的路径并传递所需的模型:
public ActionResult SomeAjaxAction()
{
var company = FetchCompanyFromSomewhere();
return View("~/Views/Home/DisplayTemplates/Company.ascx", company);
}
就将视图呈现为 HTML 字符串而言,有 some possibilities 但是
我不建议你这样做。