Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将数据从ASP.net返回到ExtJS网格_Asp.net_Extjs_Asp.net 2.0 - Fatal编程技术网

将数据从ASP.net返回到ExtJS网格

将数据从ASP.net返回到ExtJS网格,asp.net,extjs,asp.net-2.0,Asp.net,Extjs,Asp.net 2.0,我得到了一个用html和javascript(通过ExtJS)编写的网格原型/模型,我现在需要在ASP.net web应用程序中实现它。是否有人对如何将数据传递到网格(特别是GroupingStore)有任何指示 我不希望出现大量返回XML/JSON的web服务或帮助器页面,因此如果有一种方法可以使用客户端回调或页面方法(你不能告诉我我不是特别熟悉——buzzword bingo!)或类似的方法,那将是首选 请不要建议我使用jQuery、内置ASP.net网格或任何其他UI框架。ExtJS网格的

我得到了一个用html和javascript(通过ExtJS)编写的网格原型/模型,我现在需要在ASP.net web应用程序中实现它。是否有人对如何将数据传递到网格(特别是GroupingStore)有任何指示

我不希望出现大量返回XML/JSON的web服务或帮助器页面,因此如果有一种方法可以使用客户端回调或页面方法(你不能告诉我我不是特别熟悉——buzzword bingo!)或类似的方法,那将是首选


请不要建议我使用jQuery、内置ASP.net网格或任何其他UI框架。ExtJS网格的使用是由be的权力强制规定的,所以这就是我使用的网格,无论是好是坏:)

我相信一个简单返回页面json结构的服务是最好的选择,它可以很好地抽象并在整个应用程序中重用,而不是页面方法。

这是一个低技术的解决方案。它不需要使用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();
}
可以使用将数据表序列化为JSON。 IMHO提供了最干净的JSON

这就是将
DataTable
排序为JSON

警告:这显然是一个过于简单的例子。您不应该在查询字符串上传递SQL,因为它不安全(您可以使用命名查询和参数)

步骤3

在ExtJS代码中,使用Json数据存储创建一个网格,如下所示。使用适当的查询字符串参数将数据存储
url:
设置为query.aspx页面的数据存储

您还需要为网格设置列,如ExtJs示例所示

或者…


当我最近看到这张照片时,我真的很感动。他们是ExtJS合作伙伴,提供了良好的ASP.NET和ExtJS体验。不,我不为他们工作:)我还没有试过他们的网格,但它可能是无痛的(代价很高)。

恶心。您应该将警告标记为红色、粗体和闪烁。从来没有,从来没有,从来没有一个页面允许您执行“sql=select*from orders where status='open'”操作!别这样!我说真的!这就像贴上一个牌子“过来攻击我。复制我的数据库,然后删除我所有的数据!”只是同意不承担责任。永远不要那样做。编写一个web服务,以JSON的形式获取结果。这确实很容易。有一个很好的理由可以证明这一点