【发布时间】:2017-04-20 17:04:02
【问题描述】:
我有一个剑道网格,它使用剑道数据源,我不习惯使用剑道数据源进行内联编辑,通常我永远不会进行内联编辑,但我被要求这样做。
我的数据源如下
function PriceLookupGridDataSource() {
var dataSource = new kendo.data.DataSource({
transport: {
read: {
url: "../KendoGridTesting/GetThePriceLookupGrid",
dataType: "json"
},
update: {
url: function(item) {
console.log(item);
return "../KendoGridTesting/PassAnObject?myObj=" + item;
}
}
},
schema: {
model: {
id: "MaterialTypeID",
fields: {
VendorID: { type: "number" },
VendorName: { type: "string" },
Description: { type: "string" },
MaterialTypeID: { type: "number" },
MaterialType: { type: "string" },
ServicePrice: { type: "string" },
SellUOM: { type: "string" },
Cost: { type: "string" },
PurchaseUOM: { type: "string" }
}
}
},
batch: false,
pageSize: 20
});
return dataSource;
}
用于传输更新的控制器方法是
[HttpPost]
public void PassAnObject(PriceLookupGrid myObj)
{
...
}
对象是
对象 {VendorID: 26, VendorName: "ACME STONE MASONRY", Description: "Special Stone Quote", MaterialTypeID: 35, MaterialType: "Cladding"…}
PriceLookupGrid 数据类是
public class PriceLookupGrid
{
public int VendorID { get; set; }
public string VendorName { get; set; }
public string Description { get; set; }
public int MaterialTypeID { get; set; }
public string MaterialType { get; set; }
public string NewPrice { get; set; }
public string RemodelPrice { get; set; }
public string ServicePrice { get; set; }
public string SellUOM { get; set; }
public string Cost { get; set; }
public string PurchaseUOM { get; set; }
}
当我尝试将其传递给我的控制器时,我得到一个错误
GET http://localhost:51193/KendoGridTesting/PassAnObject?id=[object%20Object]&V….0000&ServicePrice=0.0000++++&SellUOM=Each&Cost=0.0000&PurchaseUOM=EachBBB 404(未找到)
它将“项目”作为单独的参数传递,我不希望这种情况发生。
有什么想法吗?
【问题讨论】:
标签: jquery asp.net-mvc kendo-ui kendo-datasource