asp.net-mvc - System.Web.Mvc.ListItem 是否不再存在于 ASP.NET MVC RC 中?

标签 asp.net-mvc

尝试创建一个列表以将一些 JSON 数据返回到 View 。按照在测试期间创建的一些网络教程进行操作,但似乎在 RC 中代码确实可以工作。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace MvcApplication6.Controllers
{
    [HandleError]
    public class HomeController : Controller
    {
        public JsonResult list()
        {
            List<ListItem> list = new List<ListItem> {
                new ListItem() {Name="value", Something = "more Values"}
            };
            return Json(List);
        }
    }
}

问题是在 System.Web.Mvc 命名空间中找不到 ListItem。我似乎无法让它发挥作用。如果 ListItem 已被删除,您如何在 Release Candidate MVC 中完成此操作?

以下是我尝试使用的教程:

http://geekswithblogs.net/michelotti/archive/2008/06/28/mvc-json---jsonresult-and-jquery.aspx http://nayyeri.net/blog/using-jsonresult-in-asp-net-mvc-ajax/

最佳答案

ListItem 位于 System.Web.UI.WebControls 中...您可能不想使用它。您可以使用 System.Web.Mvc 命名空间中的 SelectListItem,但您必须更改属性名称(您也必须对 ListItem 执行此操作)。

    public JsonResult list()
    {
        List<SelectListItem> list = new List<SelectListItem> {
            new ListItem() { Text="value", Value = "more Values" }
        };
        return Json(List);
    }

我很想使用 List 和匿名类型来执行此操作,以便我可以根据自己的喜好定义属性名称。

    public JsonResult list()
    {
        List<object> list = new List<object> {
            new { Name="value", Something = "more Values" }
        };
        return Json(List);
    }

关于asp.net-mvc - System.Web.Mvc.ListItem 是否不再存在于 ASP.NET MVC RC 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/494156/