ExtJs 4.1を使用しています。また、asp.net MVC を使用していないWebService を介して linq からのデータを表示する基本的な gridpanel アプリケーションを extjs で開発したいと考えています。どうすれば表示できますか??
次のコードから解決策を見つけようとしましたが、成功しませんでした。
grid.js
Ext.application({
launch: function() {
// Model definition and remote store (used Ext examples data)
Ext.define('ForumThread', {
extend: 'Ext.data.Model',
fields: ['countryId', 'countryName'],
idProperty: 'countryId'
});
var store = Ext.create('Ext.data.Store', {
pageSize: 20,
model: 'ForumThread',
autoLoad: true,
proxy: {
type: 'ajax',
url: '../reports/test.asmx/display',
dataType: "json",
contentType: "application/json; charset=utf-8",
//url: '/grid.json',
reader: {
type: 'json',
method: "GET",
totalProperty: 'totalCount'
}
}
});
// Define grid that will automatically restore its selection after store reload
Ext.define('PersistantSelectionGridPanel', {
extend: 'Ext.grid.Panel',
});
// Create instance of previously defined persistant selection grid panel
var grid = Ext.create('PersistantSelectionGridPanel', {
autoscroll: true,
height: 300,
renderTo: Ext.getBody(),
//region: 'center',
store: store,
multiSelect: true, // Delete this if you only need single row selection
stateful: true,
forceFit: true,
loadMask: false,
viewConfig: {
stripeRows: true
},
columns:[{
id: 'countryId',
text: "countryId",
dataIndex: 'countryId',
flex: 1,
sortable: false
},{
text: "countryName",
dataIndex: 'countryName',
width: 70,
align: 'right',
sortable: true
} ]
});
}
});
テスト.asmx
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json , UseHttpGet = true, XmlSerializeString = false)]
public string display()
{
country obj = new country();
//return obj.SelectAll();
JavaScriptSerializer serializer = new JavaScriptSerializer();
return serializer.Serialize(obj.SelectAll());
}
しかし、firebugで次のエラーが発生しています