Asp.net mvc 4 使用数据fom数据库填充剑道UI列表视图

Asp.net mvc 4 使用数据fom数据库填充剑道UI列表视图,asp.net-mvc-4,kendo-listview,Asp.net Mvc 4,Kendo Listview,我不熟悉剑道UI和ASP.NETMVC4。 我正在做一个项目购物车。 我想使用数据库表中的数据填充ListView。 在数据库中,我有一个类别表,我想在ListView中显示所有类别名称和ID。 提前谢谢,请帮我做这件事 控制器: using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; using ShopCart300714.Models

我不熟悉剑道UI和ASP.NETMVC4。 我正在做一个项目购物车。 我想使用数据库表中的数据填充ListView。 在数据库中,我有一个类别表,我想在ListView中显示所有类别名称和ID。 提前谢谢,请帮我做这件事

控制器:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using ShopCart300714.Models;
using Kendo.Mvc.UI;
using Kendo.Mvc.Extensions;

namespace ShopCart300714.Controllers
{
    public class ShopCartController : Controller
    {
        //
        // GET: /ShopCart/
        Shopping_CartEntities sc = new Shopping_CartEntities();
        public ActionResult Index()
        {

            //var cat = sc.CATEGORies.ToList();
            ViewBag.Products = sc.CATEGORies;
            return View(GetItems());
        }
        public ActionResult Product(int catID)
        {
            var prod = from p in sc.PRODUCTs
                       where p.CAT_ID == catID
                       select new
                       {
                           p.PROD_ID,
                           p.PROD_NAME,
                           p.COST
                       };
            return View(prod);

        }
        public ActionResult Products_Read([DataSourceRequest] DataSourceRequest request)
        {
            return Json(GetItems().ToDataSourceResult(request));
        }
        private static IEnumerable<CATEGORY> GetItems()
        {
            var db = new Shopping_CartEntities();
            //var categories=from c in db.CATEGORies
            //               select c
            return db.CATEGORies.Select (product => new CATEGORY
            {
                CAT_ID = product.CAT_ID,
                CAT_NAME = product.CAT_NAME,

            });
        }

    }
}
视图:


好的,那么,您面临的问题是什么?我得到一个错误:NotSupportedException未被用户处理。无法在LINQ to Entities查询中构造实体或复杂类型“Shopping\u CartModel.CATEGORY”。这是因为您正在中创建类别。请选择。尝试搜索异常,这不是冗余信息。EntityFramework.SqlServer.dll中发生了类型为“System.NotSupportedException”的异常,但未在用户代码中处理。其他信息:无法在LINQ到实体查询中构造实体或复杂类型“ShoppingCartModel.Category”。视图中的此行显示了上述错误@Html.Kendo.ListViewModel
@using Kendo.Mvc.UI;
@model IEnumerable<ShopCart300714.Models.CATEGORY>
@*@{
    ViewBag.Title = "Index";
}*@

<h2>Categories</h2>
<script type="text/x-kendo-tmpl" id="template">
    <div class="product">
        <img src="@Url.Content("~/content/web/foods/")#:ProductID#.jpg" alt="#:PROD_NAME# image"/>
        <h3>#:PROD_NAME#</h3>
    </div>
</script>

<div class="demo-section">
    @(Html.Kendo().ListView<ShopCart300714.Models.CATEGORY>(Model)
        .Name("listView")
        .TagName("div")
        .ClientTemplateId("template")
        .DataSource(dataSource =>
            {
                dataSource.Read(read => read.Action("Products_Read", "ShopCart"));
                dataSource.PageSize(15);
            })
        .Pageable()
    )