我有一个ODataStore:
var storeUsers = new DevExpress.data.ODataStore({
type: "odata",
jsonp: false,
url: SERVICE_URL,
key: "FEATID",
keyType: "Int32"
});数据库是甲骨文,FEATID是Number(38)数据类型。ODataStore用于dxDataGrid。当我更新或删除dxDataGrid的一行时,总是会出现Bad request, error in query syntax错误。经过一番研究,我发现问题在于url,现在如果keyType是Int32,url是
http://.../DataService.svc/PX_USERS(7)如果我将keyType更改为Int64,则url将变为
http://.../DataService.svc/PX_USERS(7L)但对于我的数据库来说,为了工作,网址应该是:
http://.../DataService.svc/PX_USERS(7M)但我不知道怎么换网址。我试图静态地向列中添加一个M,但是后来它变成了一个String,它仍然是错误的。
发布于 2016-08-02 11:16:40
如果您的OData需要一个带有"M“的键,则键类型为Decimal。请参阅原始数据类型 OData帮助主题。因此,将keyType选项设置为“Decimal”以解决问题。
var storeUsers = new DevExpress.data.ODataStore({
type: "odata",
jsonp: false,
url: SERVICE_URL,
key: "FEATID",
keyType: "Decimal"
});https://stackoverflow.com/questions/38695354
复制相似问题