0

我正在使用 EF 开发 ASP.Net mvc 4 应用程序。这是 Client/index.cshtml(在添加 ExtJS 之前)

@model IEnumerable<Proj.Client>

@{
    ViewBag.Title = "Index";
}

<h2>Index</h2>

<p>
    @Html.ActionLink("Create New", "Create")
</p>
<table>
    <tr>

        <th>
            @Html.DisplayNameFor(model => model.Name_Clt)
        </th>
        <th>
            @Html.DisplayNameFor(model => model.LName_Clt)
        </th>
        <th>
            @Html.DisplayNameFor(model => model.Birthday_Clt)
        </th>
        <th></th>
    </tr>

@foreach (var item in Model) {
    <tr>

        <td>
            @Html.DisplayFor(modelItem => item.Name_Clt)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.LName_Clt)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.Birthday_Clt)
        </td>
        <td>
            @Html.ActionLink("Edit", "Edit", new { id=item.ID_Client }) |
            @Html.ActionLink("Details", "Details", new { id=item.ID_Client }) |
            @Html.ActionLink("Delete", "Delete", new { id=item.ID_Client })
        </td>
    </tr>
}

</table>

我正在关注这篇博文,但我无法在上面加载数据。 http://cincolabs.com/2012/04/10/asp-net-mvc-4-ext-js-4-gridpanel/

我创建了另一个 ClientController 。

   public JsonResult GetUsers()
        {
            var entities = new Entities();
            //What is important is to return the data as JSON.
            return Json(entities.Clients.ToList(), JsonRequestBehavior.AllowGet);
        }

我应该替换此代码吗?

public ActionResult Index()
        {
            var db = new Entities();
            return View(db.Clients.ToList());

        }

另一个问题 :

// Set up a model to use in our Store
    Ext.define('Client', {
        extend: 'Ext.data.Model',
        fields: [
        { name: 'First_Name', type: 'string' },
        { name: 'Last_Name', type: 'string' },
        { name: 'Email', type: 'string' },
        { name: 'Date_Created', type: 'date', dateFormat: 'MS'}
    ]
    });

    var userStore = Ext.create('Ext.data.Store', {
        model: 'Client',
        proxy: {
            type: 'ajax',
            url: '/Examples/GetUsers',
            reader: {
                type: 'json',
                root: 'users'
            }
        },
        autoLoad: true
    });

这是什么意思“url:'/Examples/GetUsers',”!我应该在我的情况下更换它吗?

4

1 回答 1

0

你的第一个问题有点含糊。我从未使用过 Ext JS,但从您发布的代码来看,在我看来,它使用 GetUsers 函数创建了自己的表。您发布的第一个视图是一个索引视图,Visual Studio 可以自动创建它来显示您的数据。如果您的 Ext JS 正在创建表格,那么我建议您将 Index View 替换为适当的代码来调用表格数据。然后 GetUsers 方法应重命名为 Index。

您关于 /Examples/GetUsers 的问题应该是保存数据的控制器方法的 URL(类似于 /Client/Save)。

于 2013-05-06T16:58:39.990 回答