如何根据ViewBag中包含列表的元素显示文本框

时间:2014-05-21 15:47:06

标签: c# javascript jquery asp.net-mvc-3

这是我的控制器代码:

const string template = "clm_adj_process_cd ('@[CdCode]',varchar) ~f.src_dm_platform_cd ('@[EM]'==,varchar) ~paid_date_skey('@[22/09/12]',date)";

        string[] arr = template.Split('~');
        List<string> list = new List<string>();
        List<string> list2 = new List<string>();

        foreach (string a in arr)
        {
            string[] sub1 = a.Split('(');
            list.Add(sub1[0]);
            string[] sub2=sub1[1].Split(',');
            string[] sub3 = sub2[1].Split(')');
            list2.Add(sub3[0]);


        }



        ViewBag.Label = list;
        ViewBag.DataType = list2;
        return View();

我在视图中的代码:

<div>
 @foreach (var label in ViewBag.Label)
 {
      @label

    <br /><br />   
 }

 </div> 

这是显示第一个列表。

除了第一个列表的每个元素,我还要放置一个文本框或日期选择器等 取决于list2中的元素

1 个答案:

答案 0 :(得分:1)

您需要将其投射到List<string>

  <div>
 @foreach (var label in (List<string>)ViewBag.Label)
 {
      @label

    <br /><br />   
 }

 </div>