我正在使用數據集,ConnectionString存儲在項目屬性中。 我試着編輯ConnectionString的值,但是我得到只讀的消息!更改屬性值
我需要修改ConnectionString,因爲當我的應用程序部署到客戶端(需要更改用戶和密碼)時,我必須對其進行更改。
那麼我該如何修改ConnectionString?
我正在使用數據集,ConnectionString存儲在項目屬性中。 我試着編輯ConnectionString的值,但是我得到只讀的消息!更改屬性值
我需要修改ConnectionString,因爲當我的應用程序部署到客戶端(需要更改用戶和密碼)時,我必須對其進行更改。
那麼我該如何修改ConnectionString?
把它放在你的app.config(當然這可以改善或者你可以把整個的ConnectionString到的app.config像卡爾·安德森提到的)和不要忘了參考System.Configuration
<appSettings>
<add key="dbServer" value="server"/>
<add key="dbName" value="mydb"/>
<add key="integratedSecurity" value="true"/>
<add key="user" value=""/>
<add key="pwd" value=""/>
</appSettings>
,並在C#
public string GetConnectionString()
{
var builder = new SqlConnectionStringBuilder();
builder.DataSource = ConfigurationManager.AppSettings["dbServer"];
builder.InitialCatalog = ConfigurationManager.AppSettings["dbName"];
builder.IntegratedSecurtiy = Convert.ToBoolean(ConfigurationManager.AppSettings["integratedSecurity"]);
string user = ConfigurationManager.AppSettings["user"];
string pwd = ConfigurationManager.AppSettings["pwd"]
if(!string.IsNullOrEmpty(user))
{
builder.UserId = user;
builder.Password = YourCryptoProvider.Decrypt(pwd);
}
return builder.ToString()
}
使用web.config中的connectionStrings
部分,像這樣:
<connectionStrings>
<add name="MyConnectionString"
connectionString="Data Source=YourComputer\sqlexpress;Initial
Catalog=YourDatabase;User ID=YourUserName;Password=YourPassword"
providerName="System.Data.SqlClient" />
</connectionStrings>
然後你就可以在你的代碼讀出的值,就像這樣:
Configuration rootWebConfig = Configuration.WebConfigurationManager.OpenWebConfiguration("/MyWebSiteRoot");
ConnectionStringSettings connString;
// Are there any connection string values in web.config?
if (rootWebConfig.ConnectionStrings.ConnectionStrings.Count > 0)
{
// Find the particular connection string we want by name
connString = rootWebConfig.ConnectionStrings.ConnectionStrings["MyConnectionString"];
// Does the connection string exist in web.config?
if (connString != null)
{
// Yes, so use it here
else
{
// No, so generate error or alert user or whatever here
}
把它放在你的app.config – makim
不使用性能。使用Web.config/App.Config –
它存儲在項目屬性中的哪個位置? – VahidNaderi