MVC 5控制器列表传递给视图

时间:2018-02-10 19:25:00

标签: c# asp.net-mvc controller

我在MVC5项目的控制器部分有以下代码。

public ActionResult Index()
    {


        insightly Insightly = new insightly(xxxxx);


        String Contact;
        var IContact = JsonConvert.DeserializeObject<dynamic>(Insightly.GetContacts().ToString());
        // var IContact = JsonConvert.DeserializeObject<dynamic>(insightly.GetContact(CONTACT_ID).ToString());

        List<string> Contacts = new List<string>();
        foreach (var item in IContact)
        {
            Contact = item.SALUTATION;

            Contacts.Add(Contact);

        }
        Response.Write(Contacts.Count);



        return View(Contacts);
    }

一切都很好,但我在DropDown框的视图端遇到Razor语法问题。 有没有人这样做过?

1 个答案:

答案 0 :(得分:1)

不返回类型字符串List,而是返回SelectListItem类型的List。迭代您的联系人并为每个联系人添加一个selectlistitem,例如:

   List<SelectListItem> listItems= new List<SelectListItem>();
   foreach (var contact in Contacts)
   {
      listItems.Add(new SelectListItem
      {
         Text = contact,
         Value = contact
      });
   }

在视图中:

  @Html.DropDownList("NameForList", 
                Model.listItems,
                "Please Choose",
                new { @class = "form-control" })