你可以试着做一个XML文件进行数据库管理。然后,连接器要调用该文件。
解决方案 »
- wpf中scrollviewer的模板的一个奇怪问题。为何scrollviewer是透明transparent的,仍然遮挡后面的控件(点击不了下面控件)?急急急
- 用C#语言编了一个菱形程序,不过有点问题。输出像个三角形,怎么改改?
- 在线请教,Regex问题
- SortedList如何应用
- app.config文件的作用
- 新手问题: 如何在一个类中访问外部的公共变量
- C#中ComboBox下拉后为一个panel
- 着急呀,想不出来的打包问题,大哥能帮解决吗,100分
- 我写了一个web程序,第一次的时候。。。。
- 高分求<<C# COM+编程指南>>!!!
- 怎樣在ASP.NET中向SQL數據庫插入一張圖片呀
- 如何使用对象数组?
你也可以使用INI啊,同时也可以加密存储啊
如果不需要改动,可以放在资源文件里。
/// <summary>
/// 从配置文件中取得数据库连接字符串
/// 默认:Web方式,从Web.config 中取 GetConnStrWeb()
/// 桌面方式:从Windows目录下的eii.ini 中取 GetConnStrDeskTop()
/// </summary>
public class SQLConnString
{
private const string USER = "User id";
private const string PASS = "password";
private const string SOURCE = "data source";
private const string CATALOG= "catalog";
private const string SIZE = "size"; private const string SECTION= "DataBase";
private static string INI_FILE= System.Environment.GetEnvironmentVariable("WINDIR")+"\\eii.ini";
// @"C:\Winnt\system32\ini.dll"; [DllImport("kernel32")]
private static extern int GetPrivateProfileString(string section,string key,string def,StringBuilder retVal,int size,string filePath);
[DllImport("kernel32")]
private static extern uint GetPrivateProfileInt(string section,string key,uint size,string filePath);
public SQLConnString()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
/// <summary>
/// 取得web程序的数据库连接字符串
/// </summary>
/// <returns></returns>
private static string GetConnStrWeb()
{
return ConfigurationSettings.AppSettings["Tiny_Dust_DL_DataBase_Conn_String"];
} /// <summary>
/// 取得CS程序的连接字符串
/// </summary>
/// <returns></returns>
private static string GetConnStrDeskTop()
{
string ReturnText;
ReturnText="persist security info=False; packet size="+GetPrivateProfileInt(SECTION,SIZE,4096,INI_FILE).ToString()+";data source="+IniReadValue(SOURCE)
+";initial catalog="+IniReadValue(CATALOG)+";user id="
+IniReadValue(USER)+";password="+IniReadValue(PASS);
// ReturnText="provider=SQLOLEDB;data source=172.16.36.222"+
// ";initial catalog=RemoteEdu;user id=sa"
// +";password=1234567890";
return ReturnText;
} /// <summary>
/// 取得连接字符串
/// </summary>
/// <returns></returns>
public static string GetConnStr()
{
#if WEB
return GetConnStrWeb();
#else
return GetConnStrDeskTop();
#endif
}
/// <summary>
/// 从配置文件中取配置
/// </summary>
/// <param name="Key">键</param>
/// <returns></returns>
public static string IniReadValue(string Key)
{
StringBuilder temp = new StringBuilder(255);
int i = GetPrivateProfileString(SECTION,Key,"",temp,255,INI_FILE);
return temp.ToString();
} }
3,xml
通过对话框获取连接串也不是很好,因为这个的话,每个操作员都要知道是哪个数据库,什么密码了不是吗?