簡體   English   中英

如何使用json執行SQL Server存儲過程?

[英]How to execute sql server stored procedure by using json?

我在Asp.net中為餐廳管理系統創建銷售點表格,我有兩個部分,一個是“類別”,其中有諸如Drinks,Pizza等按鈕,第二個部分是“ Item”,這是類別的子菜單,例如,單擊“ Drink”它應該從sql server表中打開子菜單Pepsi,Coke,Mirinda等。

我已經創建了類別的運行時按鈕,現在我想使用json執行存儲過程以在單擊Buttons類別時在項目中顯示子菜單。請說明與sql server的連接過程以及使用json執行存儲過程。提前致謝。 關於薩奇布

JSON不會執行命令。 它只是以開發人員易於閱讀的基於文本形式存儲數據的一種方式。 如果要使用JSON存儲DropDown的值或將數據返回到DropDown則需要創建一個WebMethod 以下代碼顯示了如何創建Web服務並使用JSON以便從數據庫返回結果。 您將使用DataContractJsonSerializer類還讀取JSON 本示例來自Using JSON with ASP.NET 3.5

using System;
using System.IO;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.ServiceModel.Activation;
using System.Data.SqlClient;
using System.Runtime.Serialization.Json;
[ServiceContract(Namespace = "")]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
public class ProductService
{   
 [OperationContract]    
 public string GetProductDetailsByProductID(int productID)
 {
   Product prod = new Product();        
   string connectionString = 
     "server=localhost;uid=sa;pwd=thiru;database=AdventureWorks;";
   using (SqlConnection connection = new SqlConnection(connectionString))
   {
     string sql = "Select Name, ProductNumber from Production.Product " +
       " Where ProductID = " + productID.ToString();
     connection.Open();
     SqlCommand command = new SqlCommand(sql, connection); 
     SqlDataReader reader = command.ExecuteReader();
     while (reader.Read())
     {
       prod.Name = reader["Name"].ToString();
       prod.ProductNumber = reader["ProductNumber"].ToString();
       prod.ProductID = productID;
     }
    }
    MemoryStream stream = new MemoryStream();
    DataContractJsonSerializer serializer = new 
      DataContractJsonSerializer(typeof(Product));
    serializer.WriteObject(stream, prod);
    stream.Position = 0;
    StreamReader streamReader = new StreamReader(stream);
    return streamReader.ReadToEnd();        
  } 
}
[DataContract]
public class Product
{
    [DataMember]
    public int ProductID;
    [DataMember]
    public string Name;
    [DataMember]
    public string ProductNumber;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM