ADO.NET获取数据(DataSet)同时获取表的架构实例

发布时间:2022-04-16 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了ADO.NET获取数据(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;
  }
 }
}
<&#63;XMl version="1.0" encoding="utf-8" ?>
<configuration>
 <connectionStrings>
 <add name="Default" connectionString="Data Source=.;InITial CataLOG=EFDb;Integrated Security=true"/>
 </connectionStrings>
</configuration>

这里需要获取DataTable的主键信息,调试时发现没有主键信息,而实际数据库中是有主键(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获取数据(DataSet)同时获取表的架构实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本宝典。

脚本宝典总结

以上是脚本宝典为你收集整理的ADO.NET获取数据(DataSet)同时获取表的架构实例全部内容,希望文章能够帮你解决ADO.NET获取数据(DataSet)同时获取表的架构实例所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。