ExtJS存储更新到MVC控制器

时间:2013-05-24 14:48:39

标签: asp.net-mvc-4 extjs controller

当我在ExtJS sync上调用store方法并且有一个要更新的对象时,将使用一个对象作为参数调用代理更新方法。 如果有更多对象要更新,则会将一组对象传递给代理更新方法。

我的代理的端点是MS MVC控制器。我不能使用单个对象和对象列表重载请求的方法(由于模型绑定,MVC控制器不支持)。

我该如何使这项工作? (要么一次从ExtJS更新1个对象,要么对单个对象或对象数组使用不同的请求)

ExtJS商店:

Ext.define('MyApp.store.Configuration', {
extend: 'Ext.data.Store',
requires: 'MyApp.model.Configuration',
model: 'MyApp.model.Configuration',
autoLoad: false,
isLoaded: false,
proxy: {
    type: 'ajax',
    actionMethods: { create: 'POST', read: 'POST', update: 'POST', destroy: 'POST' },
    limitParam: undefined,
    pageParam: undefined,
    startParam: undefined,
    api: {
        read: 'MyAppData/ConfigurationRead',
        create: MyAppData/ConfigurationUpdate',
        update: MyAppData/ConfigurationUpdate',
        destroy: MyAppData/ConfigurationDelete'
    },
    reader: {
        type: 'json',
        root: 'data',
        successProperty: 'success',
        messageProperty: 'message'
    }
},

MVC控制器,无法正常工作:

    [HttpPost]
    public ActionResult ConfigurationUpdate(List<Configuration> data)
    {
        // do something
    }

    [HttpPost]
    public ActionResult ConfigurationUpdate(Configuration data)
    {
        // do something
    }

1 个答案:

答案 0 :(得分:1)