这是我的控制器,我有字符串数组,并通过ViewData
我发送数据进行查看。
[HttpGet]
public PartialViewResult GetMeataDataDetails(int id)
{
tr_upld_content upld1 = new tr_upld_content();
string[] contentlabel = db.tr_doc_content.Where(x => x.doc_typeid == id).Select(x=>x.doc_contenttypelabel).ToArray();
ViewData["passedarray"] = contentlabel;
string[] ctrltype = db.tr_doc_content.Where(x => x.doc_typeid == id).Select(x => x.doc_ctrltype).ToArray();
ViewData["ctrltype"] = ctrltype;
string[] fieldtype = db.tr_doc_content.Where(x => x.doc_typeid == id).Select(x => x.doc_fieldtype).ToArray();
return PartialView(upld1);
}
这是我的观看代码。
@model C3KYCSystem.tr_upld_content
<h2>GetMeataDataDetails</h2>
@foreach (string lbl in ViewData["passedArray"] as string[])
{
<br />
<tr>@lbl</tr>
}
@foreach (string crl in ViewData["ctrltype"] as string[])
{
switch(ViewData["ctrltype"].ToString())
{
case "textbox":
<td>@Html.TextBoxFor(m => m.upld_contentvalue)</td>
break;
}
}
Viewdata["ctrltype"]
包含文本框,多行文本框等值,如果是文本框我想获取编辑器模板等等。我想迭代每个字符串数组并检查开关内部是否匹配然后相应地渲染。此时开关没有执行。
答案 0 :(得分:0)
您需要更改
Map#merge()
到
merge()
访问循环中的每个项目