这是一个低科技解决方案。它不需要使用Web服务或任何其他附加技术。
步骤1
有一个ASPX页面,它有一个参数,则与调用是这样的:
http://mysite.com/query.aspx?sql=select * from orders where status = 'open'
步骤2
在后面的代码,做这样的事
void Page_Load(object sender, EventArgs e)
{
Response.ContentType="text/json";
DataTable contents = ExecuteDataTable(Request["sql"]);
Response.Write(JRockSerialize(contents));
Response.End();
}
您可以使用JRock将数据表序列化为JSON。恕我直言,这给了最干净的JSON。
所以这是越来越DataTable
以JSON整理...
警告:这显然是一个简单的例子。您不应该在查询字符串上传递SQL,因为它不安全(您可以使用命名查询和参数)。
步骤3
在你ExtJS的代码,创建使用JSON数据存储的网格如本Ext example。使用适当的查询字符串参数将数据存储url:
设置为您的query.aspx页面的数据存储。
您还需要为网格设置列,并再次显示在ExtJs示例中。
或者...
我真的很感动,当我看着Coolite samples最近。他们是ExtJS的合作伙伴,并提供良好的ExtJS体验。不,我不为他们工作:)我没有尝试过他们的网格,但它可能是无痛的(以一个价格)。
Yuck。您应该将警告标记为红色,大胆闪烁。从来没有,_NEVER_有一个页面,允许你做“sql = select *从订单where status ='open'”!不要这样做!我是认真的!这就像贴上一个标志“来到这里并且破解我,复制我的数据库,然后删除我拥有的所有数据!” – BlaM 2008-12-17 13:12:50