将sql过程数据动态获取到jquery视图

时间:2018-01-19 15:04:47

标签: jquery .net sql-server ajax

我正在尝试创建一个将数据提取到jquery表的报告平台。 我知道为了从每个过程中获取数据,我需要创建一个Web服务方法来序列化Json中的数据和Jquery中的ajax调用到该Web服务方法。

有没有办法可以动态完成这项工作,以便每次在报告中添加新程序时都不需要手动编写单独的Web服务方法和ajax调用?

任何建议都将不胜感激。

谢谢!

2 个答案:

答案 0 :(得分:0)

如果您要从服务器查找实时更新,请查看socket.io中的node.js。或者您可以在间隔中设置一个函数,该函数将检查服务器中是否有任何新的更新,但这可能是资源消耗。所以要小心。

答案 1 :(得分:0)

你可以像这样创建一个sp:

CREATE PROCEDURE [dbo].[SP_REPORT]
    @SP_NAME
AS
BEGIN
    SET NOCOUNT ON;

   IF @SP_NAME = 'SP_1'
   BEGIN
    EXEC [dbo].[SP_1]
   END
   ELSE IF  @SP_NAME = 'SP_2'
   BEGIN
    EXEC [dbo].[SP_2]
   END
END
GO

这样的方法:

public virtual DataTable GetReport(string spName)
{
    string query;
    SqlDataAdapter dataAdapter;
    DataTable dT;
    SqlCommand command;
    SqlConnection connection;

    query = "[dbo].[SP_REPORT]";
    connection = new SqlConnection("ConnectionString");
    command = new SqlCommand(query, connection);

    command.Parameters.AddWithValue("@SP_NAME", spName);
    command.CommandType = CommandType.StoredProcedure;
    dT = new DataTable();

    try
    {
        dataAdapter = new SqlDataAdapter(command);
        dataAdapter.Fill(dT);
    }
    catch (Exception)
    {
        throw;
    }
    finally
    {
        if (connection != null && connection.State == ConnectionState.Open)
            connection.Close();
    }

    return
        dT;
}

该方法将为您添加所有 sps ,但每次添加sp时,您都需要将其添加到 sp 并在<上使用<强>前端