我使用.net C#
开发WEB API项目我需要从controller.cs文件中获取值并将该值用于View(.cshtml)文件。
我的控制器代码:
HomeController.cs
XmlDocument doc = new XmlDocument();
doc.Load(httpWebResponse.GetResponseStream());
XmlElement TransID = (XmlElement)doc.SelectSingleNode("/CensusUploadResponse/TransactionID");
if (TransID != null)
{
string ResultID = TransID.InnerText;
}
我需要将ResultID传递给Index.cshtml(例如:ResultID = 17)
MY View .cshtml文件代码:
Index.cshtml
<div runat="server" id="CensusuploadDiv" style="border:1px solid black; width:420px;">
</div>
我需要将ResultID值分配给CensusuploadDiv。
我使用ViewBag尝试使用以下方法。但是它没有用。
将ResultID分配给ViewBag,如下所示
if (TransID != null)
{
string ResultID = TransID.InnerText;
ViewBag.Test2 = ResultID;
}
我得到索引文件中的值,如下所示
<div runat="server" id="CensusuploadDiv" style="border:1px solid black; width:420px;">
@ViewBag.Test2
</div>
但是价值不与div绑定。
答案 0 :(得分:1)
我通过使用TempData找到解决问题的方法。
TempData帮了我很多......
我在HomeController.cs中使用TempData,如下所示
string result = strBind.ToString();
TempData["Result"] = result;
在view.cshtml中
@TempData["Result"]
这对我来说很好......
答案 1 :(得分:0)
您是否开发了Web API或ASP.NET MVC项目?在视图中从控制器访问值的最佳方法是使用强类型模型:
@model int
<div>@Model</div>
实施例: Index.cshtml
@model int
<div>@Model</div>
HomeController.cs
public ActionResult GetId()
{
int id;
....
return View(id);
}
请注意,WebApi和MVC控制器略有不同。但这就是它的工作原理。