本文環(huán)境 Microsoft Visual Studio 2022 .Net6 SQLServer2019
一、基本環(huán)境、配置文件
在解決方案管理器右鍵添加相關(guān)的包,如下兩個(gè)包
Microsoft.Data.SqlClient SQLServer SQLServer數(shù)據(jù)庫(kù)
Microsoft.Extensions.Configuration.Json json配置文件
添加配置文件 appsettings.json,選始終復(fù)制
添加json配置文件內(nèi)容如下
{
"ConnectionStrings": {
"DefaultConnection": "Data Source=.;Initial Catalog=Demo20220707;Integrated Security=true; pooling=false;TrustServerCertificate=true"
},
"AppSettings": {
"DefaultTable": "UserData2"
}
}
DefaultConnection 根據(jù)自己的情況改
二、創(chuàng)建測(cè)試表與數(shù)據(jù)
創(chuàng)建測(cè)試的表與數(shù)據(jù),如下圖
SQL 語(yǔ)句代碼如下
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'UserData2') AND type in (N'U'))
DROP TABLE UserData2;
CREATE TABLE UserData2(
ID int IDENTITY(1,1) PRIMARY KEY ,
LoginName nvarchar(50) UNIQUE,
Password nvarchar(50),
DisplayName nvarchar(50),
CreateDate datetime,
);
insert into UserData2(LoginName,Password,DisplayName,CreateDate) values('admin','pwtest','管理員',getdate());
注:真做系統(tǒng)盡量加密密碼,這樣不安全
沒(méi)SQLServer 到官網(wǎng)下載個(gè)開(kāi)發(fā)版即可
三、寫(xiě)代碼調(diào)試
然后打開(kāi) Program.cs 開(kāi)始寫(xiě)代碼,圖下圖
注意:.net 6 的 Program.cs 默認(rèn)是看不見(jiàn) Program 類(lèi)的這是我后改的為了寫(xiě)列子方便,代碼如下文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-475682.html
using Microsoft.Data.SqlClient;
using Microsoft.Extensions.Configuration;
using System.Data.Common;
using System.Reflection;
internal class Program
{
static void Main(string[] args)
{
//一、讀取配置文件
var appDir = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) ?? String.Empty;
var cfgPath = Path.Combine(appDir, "appsettings.json");
IConfigurationRoot? config = new ConfigurationBuilder()
.AddJsonFile(cfgPath)
.Build();
var defconnstring = config.GetConnectionString("DefaultConnection");
var defTable = config.GetSection("AppSettings:DefaultTable").Value;
Console.WriteLine($"{defconnstring}\t{defTable}\n\n");
//二、數(shù)據(jù)庫(kù)操作
using SqlConnection conn = new SqlConnection(defconnstring);
conn.ConnectionString = defconnstring;
conn.Open();
var sql = $"SELECT * FROM {defTable} where id < @id";
using (var cmdSelect = conn.CreateCommand())
{
cmdSelect.CommandText = sql;
//where條件沒(méi)意義就是為了演示 Parameter 的使用
var parm1 = cmdSelect.CreateParameter();
parm1.ParameterName = "id";
parm1.Value = 10000;
cmdSelect.Parameters.Add(parm1);
using (var red = cmdSelect.ExecuteReader())
{
var cloms = red.GetColumnSchema();
var clocount = cloms.Count;
foreach (var clo in cloms)
{
Console.Write("{0}\t", clo.ColumnName);
}
Console.WriteLine("");
while (red.Read())
{
for (int i = 0; i < clocount; i++)
{
Console.Write("{0}\t", red[i]);
}
Console.WriteLine("");
}
}
}
}
}
四、最終運(yùn)行效果
Ctrl+F5 即可(運(yùn)行不調(diào)試)
F5 調(diào)試
本文完文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-475682.html
到了這里,關(guān)于.net core .net6 讀取數(shù)據(jù)庫(kù) 讀取配置文件 保姆級(jí)教程的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!