在这行代码中
<% var tmp = int.Parse(ViewData["numOfGroups"].ToString()); %>
Run Code Online (Sandbox Code Playgroud)
我有错误:Object reference not set to an instance of an object.如何正确转换
ViewData["numOfGroups"]到int?
您应首先确保控制器操作正在设置此变量:
public ActionResult Index()
{
ViewData["numOfGroups"] = "15";
return View();
}
Run Code Online (Sandbox Code Playgroud)
一旦你完成了这个,你就不应该得到一个NullReferenceException,你的代码应该可行.
当然,正如我多次已经写在这里,你应该更喜欢强类型视图代替ViewData.您还应该相应地键入模型属性.解析字符串不是视图的责任.所以:
public ActionResult Index()
{
var model = new MyModel
{
NumOfGroups = 15
};
return View(model);
}
Run Code Online (Sandbox Code Playgroud)
在你看来:
<% var tmp = Model.NumOfGroups; %>
Run Code Online (Sandbox Code Playgroud)
顺便说一句,这也应该避免,因为我觉得你在视图中声明变量意味着你有意使用它们.视图不是用于声明变量和编写C#代码.它们是标记.
| 归档时间: |
|
| 查看次数: |
5491 次 |
| 最近记录: |