Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.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
C# jqGrid(免费版)和SQL Server 2012以及FileTables_C#_Asp.net_Sql Server_Hyperlink_Jqgrid - Fatal编程技术网

C# jqGrid(免费版)和SQL Server 2012以及FileTables

C# jqGrid(免费版)和SQL Server 2012以及FileTables,c#,asp.net,sql-server,hyperlink,jqgrid,C#,Asp.net,Sql Server,Hyperlink,Jqgrid,在ASP.NET单个网页中使用jqGrid的最新版本(免费版本),并且当前有一个引用XML(静态)数据集的网格。在数据集中,有一个文件名已格式化为超链接。网格起作用,超链接起作用。单击超链接时,会在web浏览器的新选项卡中打开PDF文件 部分代码如下: $("#myGrid").jqGrid({ url: "Myfile.xml", xmlReader: { repeatitems: false,

在ASP.NET单个网页中使用jqGrid的最新版本(免费版本),并且当前有一个引用XML(静态)数据集的网格。在数据集中,有一个文件名已格式化为超链接。网格起作用,超链接起作用。单击超链接时,会在web浏览器的新选项卡中打开PDF文件

部分代码如下:

       $("#myGrid").jqGrid({
            url: "Myfile.xml",
            xmlReader: {
                repeatitems: false,
                root: "Recordset",
                row: "Record",
                id: "[setEntry]"
            },
            datatype: "xml",
。。等等

用户希望我将其放在SQL Server 2012数据库中,如果可能,利用FileTables功能,不仅存储网格中显示的数据,还存储PDF文件,并以相同的方式使用相同的超链接功能

问题:

  • 加载网格时,它选择整个XML数据集,我使用网格的搜索和筛选工具的功能。如何使其改为读取SQL Server 2012表?我们不使用PHP

  • 其次,假设我可以读取SQL表(一个
    select*
    语句),我可以做与以前基本相同的事情吗?超链接到PDF文件,该文件不是存储在IIS服务器上的虚拟文件夹中,而是驻留在SQL server中的文件表中


在我看来,关于服务器实现的问题似乎占99%。您只需要提供jqGrid的URL,它返回填充网格所需的相同数据。放置在网格中的URL应指向静态PDF文件(在web服务器上)或ASP.NET,后者将PDF作为二进制数据返回,并在HTTP标头中添加
“内容处置”、“附件;filename=someFile.PDF”
。客户端将能够像静态PDF文件一样保存或直接显示数据。如果不使用PHP,如何让jqGrid执行存储过程从数据集中执行初始选择?现在,这个XML文件包含在web应用程序中,XML阅读器执行work.jqGrid(如果是纯JavaScript解决方案)。它将向您的ASP.NET代码发出HTTP请求。例如,代码将是
var con=newsqlconnection(Settings.Default.DB)
打开数据库,使用
var cmd=new SqlCommand(“dbo.spYouStoredProcedure”,con){CommandType=CommandType.StoredProcedure};con.Open();var dr=cmd.ExecuteReader()
执行存储过程,然后
while(dr.Read()){…}
读取结果。您可以将结果作为JSON返回。所以所有的实现都在服务器代码中。