asp.net-mvc – 在ASP.NET MVC中的JSON属性中返回呈现的HTML部分
发布时间:2020-05-23 22:19:58 所属栏目:asp.Net 来源:互联网
导读:我很高兴从ASP.NET中的控制器返回JsonResult对象或部分ASP.NET视图. 我想将呈现的局部视图作为JSON对象中的属性返回.例如 请求 /post/detail/1 会回来的 {PostId: 1, Html: psome markup rendered from a partial to inject/p } 当我在JavaScript中处理响应时
|
我很高兴从ASP.NET中的控制器返回JsonResult对象或部分ASP.NET视图. 我想将呈现的局部视图作为JSON对象中的属性返回.例如 请求 /post/detail/1 会回来的 {"PostId": 1,"Html": "<p>some markup rendered from a partial to inject</p>" }
当我在JavaScript中处理响应时,这将允许我知道PostId.有关最佳方法的任何提示吗? 解决方法以下是一些可行的代码,因为我今天需要这样做. The original code is described here.public static string RenderPartialToString(string controlName,object viewData)
{
var viewContext = new ViewContext();
var urlHelper = new UrlHelper(viewContext.RequestContext);
var viewDataDictionary = new ViewDataDictionary(viewData);
var viewPage = new ViewPage
{
ViewData = viewDataDictionary,ViewContext = viewContext,Url = urlHelper
};
var control = viewPage.LoadControl(controlName);
viewPage.Controls.Add(control);
var sb = new StringBuilder();
using (var sw = new StringWriter(sb))
using (var tw = new HtmlTextWriter(sw))
{
viewPage.RenderControl(tw);
}
return sb.ToString();
}
然后,您可以使用它来执行RJS样式的json结果 public virtual ActionResult Index()
{
var jsonResult = new JsonResult
{
Data = new
{
main_content = RenderPartialToString("~/Views/contact/MyPartial.ascx",new SomeObject()),secondary_content = RenderPartialToString("~/Views/contact/MyPartial.ascx",}
};
return Json(jsonResult,JsonRequestBehavior.AllowGet);
}
而partial有一个强类型的视图模型 <%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<SomeObject>" %> <h1>My Partial</h1> (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 使用ASP.NET MVC帮助器方法设置maxlength和
- asp.net-mvc – 组合ASP.NET MVC Web应用程序的最佳实践(ME
- 如何从ASP.NET MVC视图显示存储在数据库中的HTML?
- asp.net – 我应该花费我的努力实现knockoutjs或查看jQuery
- asp.net – 如何在SQL4的log4net配置中使用存储过程进行日志
- Asp.net形成身份验证登录循环
- asp.net-mvc-3 – ASP.MVC 3 Razor在Html.PartialView扩展中
- ASP.NET – UpdatePanel和JavaScript
- ASP.NET和.NET框架版本之间的区别
- 在asp.net MVC Javascript事件中没有命中断点
推荐文章
站长推荐
- asp.net – 如何在Firefox上命名文件以供下载?
- asp.net – UpdatePanel中的动态创建控件?
- asp.net-mvc – 为什么HttpContext不是从HttpCon
- asp.net-mvc – ASP.NET MVC领域:它们对大型应用
- asp.net-mvc – 类库中的控制器和视图
- asp.net-mvc – 具有持久HTTP连接的IDbConnectio
- 设置ASP.NET(Visual Studio)服务器配置的默认页面
- asp.net-mvc – asp.net mvc单选按钮状态
- asp.net-mvc – 在MVC3中的错误 – 请求永远不会
- asp.net – 缓存viewstate?
热点阅读
