目前,我在模型中定义了一些变量,然后将它们分配了相应的控制器中的值。然后,我希望这些赋值被视图中的变量使用,但是我不确定要实现此目标需要做什么...
下面是我的课堂模型;
public class Category
{
public string result { get; set; }
public Array userData { get; set; }
}
接下来是控制器,其中我已将值分配给上述声明的变量;
[HttpPost]
public ActionResult ReadCategory()
{
var dataFile = Server.MapPath("~/App_Data/Category.txt");
Category passCategory = new Category
{
result = "",
delimiterChar = { ',' },
userData = System.IO.File.ReadAllLines(dataFile)
};
return View(passCategory);
}
最后,我想在视图中使用上述分配的变量。尽管出于某种原因,这些变量都会出现错误“名称'variableName'在当前上下文中不存在”。
查看代码如下:
@using (Html.BeginForm("ReadCategory", "Index", FormMethod.Post))
{
<div class="categoryList">
@result
@if (result == "")
{
foreach (String dataLine in userData)
{
<p>
<a data-toggle="collapse" href="#collapseExample" role="button" aria-expanded="false" aria-controls="collapseExample">
@dataLine.Split(delimiterChar)[0]
</a>
<button class="btn" id="@dataLine.Split(delimiterChar)[1]"><i class="fas fa-plus secondaryPlusIcon" id="@dataLine.Split(delimiterChar)[1]"></i></button>
<button class="btn" id="@dataLine.Split(delimiterChar)[1]"><i class="far fa-edit secondaryEditIcon" id="@dataLine.Split(delimiterChar)[1]"></i></button>
<button class="btn" id="@dataLine.Split(delimiterChar)[1]"><i class="far fa-trash-alt secondaryDeleteIcon" id="@dataLine.Split(delimiterChar)[1]"></i></button>
</p>
<div class="collapse" id="collapseExample">
<div class="card card-body w-25 p-3 collapsible">
@dataLine.Split(delimiterChar)[1] / Sub-category <!-- The ID value (Value after the delimiter) This ID value is associated to each category listed above-->
</div>
</div>
}
}
</div>
}
(视图中的大多数代码都是不必要的,但是我想专门关注变量:“结果”,“ userData”和“ delimiterChar”)〜这些变量引发上述错误。
注意:我目前正在视图中使用命名空间;
@使用projectName.Models
@model IEnumerable
我显然在这里错过了一些东西,对于MVC来说我还是一个新手,对于解决此问题的任何指导将不胜感激,谢谢:)
Category
使用页面指令在视图中设置(如果需要,使用适当的名称空间)作为模型
@model Category
然后使用而不是result
使用Model.result
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句