我开发了一个带有SQL Server后端的Windows应用程序来插入员工姓名。我将逐个在三个数据库中插入员工详细信息。所以,我喜欢从文本文件中获取连接值。每当我想更改连接时,我只想在文本文件中输入登录详细信息。
如何从文本文件中获取连接字符串?
答案 0 :(得分:5)
使用app.config
(MSDN)文件。
允许您配置多个已命名的连接字符串,您可以通过System.Configuration.ConfigurationManager类“ConnectionStrings属性
进行访问答案 1 :(得分:3)
请尝试这样
using System;
using System.IO;
class Test
{
public static void Main()
{
string txtpath = @"c:\textfile.txt";
try
{
if (File.Exists(txtpath))
{
using (StreamReader sr = new StreamReader(txtpath))
{
while (sr.Peek() >= 0)
{
string ss = sr.ReadLine();
string [] txtsplit = ss.Split(';');
//now loop through array
string server=txtsplit[0].Tostring();
string userid= split[1].Tostring(); // user id
string password= split[2].Tostring(); // password
}
}
}
}
catch (Exception e)
{
Console.WriteLine("Error: {0}", e.ToString());
}
}
}
答案 2 :(得分:2)
您无需使用纯文本文件即可。您可以使用一个特殊的配置文件和一组类,以使您的生活更轻松。
将配置文件添加到项目中
转到解决方案中的添加新项目,然后选择应用程序配置文件
将连接字符串添加到配置文件
只需复制/粘贴此内容并根据需要修改连接字符串和连接字符串名称
<configuration>
<connectionStrings>
<add name="Conn1" connectionString="Data Source=SERVER_NAME;Initial Catalog=DATABASE;Persist Security Info=True;User ID=USER;Password=12345678" providerName="System.Data.SqlClient"/>
<add name="Conn2" connectionString="Data Source=SERVER_NAME;Initial Catalog=DATABASE;Persist Security Info=True;User ID=USER;Password=12345678" providerName="System.Data.SqlClient"/>
</connectionStrings>
</configuration>
将System.Configuration引用添加到项目中
右键单击引用,转到添加新项,然后从.NET选项卡中选择System.Configuration
添加包装类
这不是必需的,但会让您的生活更轻松。创建一个这样的类,这样每次需要连接数据库时都不必调用配置管理器
using System;
using System.Configuration;
using System.Text;
namespace WindowsFormsApplication4
{
class Config
{
public static string CONNECTION_STRING_1
{
get
{
return ConfigurationManager.ConnectionStrings["Conn1"].ConnectionString;
}
}
public static string CONNECTION_STRING_2
{
get
{
return ConfigurationManager.ConnectionStrings["Conn2"].ConnectionString;
}
}
}
}
在其他方法中使用连接字符串
SqlConnection conn = new SqlConnection(Config.CONNECTION_STRING_1);
答案 3 :(得分:0)
class Sql
{
public static string ReadCS()
{
using (var streamReader = File.OpenText("SqlSettings.txt"))//Enter FileName
{
var lines = streamReader.ReadToEnd();
return lines;
}
}
public SqlConnection con = new SqlConnection(Sql.ReadCS());
}