cs动态插入一段html代码,c# mvc 在控制器中动态解析cshtml文件并获取对应的html代码...

public static string GetViewHtml(ControllerContext context, string viewName, Object param)

{

if (string.IsNullOrEmpty(viewName))

viewName = context.RouteData.GetRequiredString("action");

//context.Controller.ViewData.Model = param;

using (var sw = new StringWriter())

{

ViewEngineResult viewResult = ViewEngines.Engines.FindPartialView(context, viewName);

var viewContext = new ViewContext(context,

viewResult.View,

context.Controller.ViewData,

context.Controller.TempData,

sw);

try

{

viewResult.View.Render(viewContext, sw);

}

catch (Exception ex)

{

throw;

}

return sw.GetStringBuilder().ToString();

}

}

调用如下

public ActionResult A1(){

ViewData["a"]=1;

retrun View();

}

public ActionResult A2(){

ViewData["a"]=1;//这里也要有ViewData,不然报错

var html=GetViewHtml(this.ControllerContext, "A1", null);

}

原文:https://www.cnblogs.com/q149072205/p/9056154.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值