asp.net-mvc – ASP.NET MVC – 结合Json结果与ViewResult
发布时间:2020-05-23 07:37:11 所属栏目:asp.Net 来源:互联网
导读:我可以返回一个包含渲染视图的Json结果吗? 我需要它返回一个提交的表单的新ID以及其HTML和一些其他属性。 另外,当我需要从一个Json对象中的一个动作返回两个(或更多)视图结果时,这也是有帮助的。 谢谢! 您还可以将一个PartialViewResult渲染为字符串,然
|
我可以返回一个包含渲染视图的Json结果吗? 我需要它返回一个提交的表单的新ID以及其HTML和一些其他属性。 另外,当我需要从一个Json对象中的一个动作返回两个(或更多)视图结果时,这也是有帮助的。 谢谢! 解决方法您还可以将一个PartialViewResult渲染为字符串,然后将此字符串通过JSON传递到您的视图,使用jQuery在您的页面中呈现它。你可以看到在这篇文章:http://www.atlanticbt.com/blog/asp-net-mvc-using-ajax-json-and-partialviews/。 我创建了一个扩展,使其更容易: public static class MvcHelpers
{
public static string RenderPartialView(this Controller controller,string viewName,object model)
{
if (string.IsNullOrEmpty(viewName))
viewName = controller.ControllerContext.RouteData.GetRequiredString("action");
controller.ViewData.Model = model;
using (var sw = new StringWriter())
{
ViewEngineResult viewResult = ViewEngines.Engines.FindPartialView(controller.ControllerContext,viewName);
var viewContext = new ViewContext(controller.ControllerContext,viewResult.View,controller.ViewData,controller.TempData,sw);
viewResult.View.Render(viewContext,sw);
return sw.GetStringBuilder().ToString();
}
}
}
在我的控制器中,我叫它如下: const string msg = "Item succesfully updated!";
return new JsonResult
{
Data = new
{
success = true,message = msg,view = this.RenderPartialView("ProductItemForm",model)
},JsonRequestBehavior = JsonRequestBehavior.AllowGet
};
其中“this”是控制器的情况下,“ProductItemForm”是我的视图和“模型”是我的productItem对象:) 希望这可以帮助 (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 如何将URL参数绑定到具有不同名称的模型属性
- 在ASP.NET Core中相关的ConfigureAwait(false)?
- asp.net-mvc – 动作命名约定
- asp.net-mvc-3 – MVC3 = return EmptyResult()当一个好主意
- asp.net – SignalR和浏览器连接限制
- asp.net-core – 使用asp.net核心进行Windows身份验证
- asp.net-mvc – 带vNext的MVC 6:我们还需要Global.asax吗?
- asp.net – 如何访问嵌套母版页中的控件?为什么它与内容页
- asp.net-mvc – 请求验证 – ASP.NET MVC 2
- asp.net – Orchard CMS和Sitefinity CMS
推荐文章
站长推荐
- asp.net-mvc – DataAnnotations和资源不能很好地
- asp.net-mvc – 使用Repository/Service Pattern
- asp.net-mvc – 如何在共享托管环境中实现ASP.Ne
- asp.net-mvc – 适用于MVC 2 beta 2的MicrosoftM
- 学习Asp.Net WebForms或Asp.Net MVC
- asp.net-mvc – 适用于典型n层架构的Web API在哪
- ASP.NET MVC 4和ExtensionlessUrlHandler
- views – 我应该在asp.net MVC6中为我的所有图像
- asp.net-mvc – 在html.actionlink上单击转到上一
- ASP.Net MVC MvcBuildViews大大增加了编译时间
热点阅读
