ADO.NET獲取數(shù)據(jù)(DataSet)同時獲取表的架構實例
普通的ADO.NET獲取DataSet的寫法如下:
using System.Configuration; using System.Data; using System.Data.SqlClient; public class SQLHelper { private static readonly string ConnectionString = ConfigurationManager.ConnectionStrings["Default"].ConnectionString; public static DataSet GetDataSet(string sql) { using (SqlConnection conn =new SqlConnection(ConnectionString)) { SqlCommand cmd = new SqlCommand(sql, conn); SqlDataAdapter adapter = new SqlDataAdapter(cmd); DataSet ds = new DataSet(); conn.Open(); adapter.Fill(ds); return ds; } } }
<?xml version="1.0" encoding="utf-8" ?> <configuration> <connectionStrings> <add name="Default" connectionString="Data Source=.;Initial Catalog=EFDb;Integrated Security=true"/> </connectionStrings> </configuration>
這里需要獲取DataTable的主鍵信息,調(diào)試時發(fā)現(xiàn)沒有主鍵信息,而實際數(shù)據(jù)庫中是有主鍵(Id)
此時需要給SqlDataAdapter設置屬性MissingSchemaAction為System.Data.MissingSchemaAction.AddWithKey
修改后的SQLHelper為
using System.Configuration; using System.Data; using System.Data.SqlClient; public class SQLHelper { private static readonly string ConnectionString = ConfigurationManager.ConnectionStrings["Default"].ConnectionString; public static DataSet GetDataSet(string sql) { using (SqlConnection conn =new SqlConnection(ConnectionString)) { SqlCommand cmd = new SqlCommand(sql, conn); SqlDataAdapter adapter = new SqlDataAdapter(cmd); adapter.MissingSchemaAction = MissingSchemaAction.AddWithKey; DataSet ds = new DataSet(); conn.Open(); adapter.Fill(ds); return ds; } } }
以上這篇ADO.NET獲取數(shù)據(jù)(DataSet)同時獲取表的架構實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Asp.net FCKEditor 2.6.3 上傳文件沒有權限解決方法
到Fckeditor官方網(wǎng)站下載FredCK.FCKeditorV2.vs2005 (asp.net)2009-02-02Asp.net MVC利用knockoutjs實現(xiàn)登陸并記錄用戶的內(nèi)外網(wǎng)IP及所在城市(推薦)
這篇文章主要介紹了 Asp.net MVC利用knockoutjs實現(xiàn)登陸并記錄用戶的內(nèi)外網(wǎng)IP及所在城市(推薦),需要的朋友可以參考下2017-02-02ASP.NET中的Inherits、CodeFile、CodeBehind的區(qū)別詳解
這篇文章主要介紹了ASP.NET中的Inherits、CodeFile、CodeBehind的區(qū)別詳解,需要的朋友可以參考下2014-07-07使用 ServiceStack.Text 序列化 json的實現(xiàn)代碼
今天發(fā)篇文章總結下自己使用 ServiceStack.Text 來序列化 json。它的速度比 Newtonsoft.Json 快很多,在測試時發(fā)現(xiàn)比 fastJson 還快些2013-06-06.NET?6開發(fā)TodoList應用引入第三方日志庫
這篇文章主要介紹了.NET?6開發(fā)TodoList應用引入第三方日志庫,在我們項目開發(fā)的過程中,使用.NET?6自帶的日志系統(tǒng)有時是不能滿足實際需求的,比如有的時候我們需要將日志輸出到第三方平臺,更多詳細內(nèi)容請需要的小伙伴參考下面文章內(nèi)容2021-12-12ASP.NET Core自定義中間件如何讀取Request.Body與Response.Body的內(nèi)容詳解
這篇文章主要給大家介紹了關于在ASP.NET Core自定義中間件中如何讀取Request.Body與Response.Body的內(nèi)容,文中通過示例代碼介紹的非常詳細,對大家學習或者使用ASP.NET Core具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧2020-05-05