C#读取appconfig文件配置数据库连接并 连接数据库进行数据查询
App.config配置如下:
<?xml version="1.0" encoding="utf-8"?> <configuration> <startup> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" /> </startup> <!--数据库配置1--> <connectionStrings> <!--<add name="MyContext" providerName="MySql.Data.MySqlClient" connectionString="server=192.168.32.146; port=3306;database=jd_autotest;uid=root;password=123456" />--> <add name="MyContext" providerName="MySql.Data.MySqlClient" connectionString="server=192.168.32.146;user=root;database=jd_autotest;port=3306;password=123456;allow user variables=true;CharSet=utf8;SslMode=None;"/> </connectionStrings>
<appSettings> <add key="MyConnectContext" value="server=192.168.32.146; port=3306;uid=root;password=123456;database=jd_autotest;" /> </appSettings> </configuration>
主要数据库操作:
获取配置方法一:
string ConnectString = System.Configuration.ConfigurationManager.ConnectionStrings["MyContext"].ToString();
获取配置方法二:
string ConnectString = ConfigurationManager.AppSettings["MyConnectContext"].ToString();
1.连接数据库并查询获取数据:
public DataTable searchData(string band) { MySqlConnection mySqlConnection = new MySqlConnection(ConnectString); string sqlJoin = ""; if (!band.Equals("")) { sqlJoin = " where band.band in ('" + band + "')"; } string querySql = string.Format(@"select * from band {0}", sqlJoin); MySqlCommand mySqlCommand = new MySqlCommand(querySql, mySqlConnection); mySqlCommand.CommandTimeout = 180; MySqlDataAdapter mySqlDataAdapter = new MySqlDataAdapter(); mySqlDataAdapter.SelectCommand = mySqlCommand; DataTable dataTable = new DataTable("band"); mySqlDataAdapter.Fill(dataTable); return dataTable; }
2.更新数据库数据:
public void UpdateTestData(string result,string value1,string value2,string value3,string limit1,string limit2,string limit3,string test_data_id) { try { int successCount = 0; DataTable dtTestUpdateData = new DataTable(); MySqlConnection myConn = Db.MyConn(); MySqlTransaction tran = myConn.BeginTransaction(); try { MySqlDataAdapter ada = new MySqlDataAdapter(); string UpDateSql = string.Format(@"update test_data set result = ifnull(@result, ''), limit1 = ifnull(@limit1, ''), limit2 = ifnull(@limit2, ''), limit3 = ifnull(@limit3, ''), value1 = ifnull(@value1, ''), value2 = ifnull(@value2, ''), value3 = ifnull(@value3, ''), modify_user_name = ifnull(@modify_user_name, ''), modify_datetime = now() where test_data_id = @test_data_id"); MySqlCommand updateCommand = new MySqlCommand(UpDateSql, myConn); updateCommand.Parameters.AddWithValue("result", result); updateCommand.Parameters.AddWithValue("limit1", limit1); updateCommand.Parameters.AddWithValue("limit2", limit2); updateCommand.Parameters.AddWithValue("limit3", limit3); updateCommand.Parameters.AddWithValue("value1", value1); updateCommand.Parameters.AddWithValue("value2", value2); updateCommand.Parameters.AddWithValue("value3", value3); updateCommand.Parameters.AddWithValue("modify_user_name", MyHelper.loginUserName); updateCommand.Parameters.AddWithValue("test_data_id", test_data_id); successCount = updateCommand.ExecuteNonQuery(); tran.Commit(); } catch (Exception ex) { } } catch (Exception ex) { } }
注意事项:
引用 ConfigurationManager 需添加 using System.Configuration;引用, 路径一般在 C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.7.2\System.Configuration.dll中。
引用 MySqlConnection 需添加 using System.Data;

【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构