چگونه با استفاده از برنامه، رشته اتصال sql در فایل webconfig رااضافه و بروز کنیم
یکشنبه 12 مرداد 1393در این مقاله من اینکه چگونه می توان با استفاده از برنامه، رشته اتصال را در فایل webconfig در ASP.NET با استفاده از C#و VB.Net اضافه و بروز کنیم را توضیح می دهم.
در اینجا چگونگی دسترسی و بروز رسانی مولفه های مختلف رشته اتصال همانند Data Source,UserId,Password,InitialCatolog,Intergrated Security را توضیح خواهم داد.
فضاهای نام:
در ابتدا فضاهای نام زیر را به پروژه خود اضافه کنید:
using System.Xml; using System.Data.SqlClient;
Imports System.Xml Imports System.Data.SqlClient
قطعه کد مرتبط برای اضافه کردن و یا بروز کردن رشته اتصال در فایل webconfig :
private void AddUpdateConnectionString(string name)
{
bool isNew = false;
string path = Server.MapPath("~/Web.Config");
XmlDocument doc = new XmlDocument();
doc.Load(path);
XmlNodeList list = doc.DocumentElement.SelectNodes(string.Format("connectionStrings/add[@name='{0}']", name));
XmlNode node;
isNew = list.Count == 0;
if (isNew)
{
node = doc.CreateNode(XmlNodeType.Element, "add", null);
XmlAttribute attribute = doc.CreateAttribute("name");
attribute.Value = name;
node.Attributes.Append(attribute);
attribute = doc.CreateAttribute("connectionString");
attribute.Value = "";
node.Attributes.Append(attribute);
attribute = doc.CreateAttribute("providerName");
attribute.Value = "System.Data.SqlClient";
node.Attributes.Append(attribute);
}
else
{
node = list[0];
}
string conString = node.Attributes["connectionString"].Value;
SqlConnectionStringBuilder conStringBuilder = new SqlConnectionStringBuilder(conString);
conStringBuilder.InitialCatalog = "TestDB";
conStringBuilder.DataSource = "myserver";
conStringBuilder.IntegratedSecurity = false;
conStringBuilder.UserID = "test";
conStringBuilder.Password = "12345";
node.Attributes["connectionString"].Value = conStringBuilder.ConnectionString;
if (isNew)
{
doc.DocumentElement.SelectNodes("connectionStrings")[0].AppendChild(node);
}
doc.Save(path);
}
Private Sub AddUpdateConnectionString(name As String)
Dim isNew As Boolean = False
Dim path As String = Server.MapPath("~/Web.Config")
Dim doc As New XmlDocument()
doc.Load(path)
Dim list As XmlNodeList = doc.DocumentElement.SelectNodes(String.Format("connectionStrings/add[@name='{0}']", name))
Dim node As XmlNode
isNew = list.Count = 0
If isNew Then
node = doc.CreateNode(XmlNodeType.Element, "add", Nothing)
Dim attribute As XmlAttribute = doc.CreateAttribute("name")
attribute.Value = name
node.Attributes.Append(attribute)
attribute = doc.CreateAttribute("connectionString")
attribute.Value = ""
node.Attributes.Append(attribute)
attribute = doc.CreateAttribute("providerName")
attribute.Value = "System.Data.SqlClient"
node.Attributes.Append(attribute)
Else
node = list(0)
End If
Dim conString As String = node.Attributes("connectionString").Value
Dim conStringBuilder As New SqlConnectionStringBuilder(conString)
conStringBuilder.InitialCatalog = "TestDB"
conStringBuilder.DataSource = "myserver"
conStringBuilder.IntegratedSecurity = False
conStringBuilder.UserID = "test"
conStringBuilder.Password = "12345"
node.Attributes("connectionString").Value = conStringBuilder.ConnectionString
If isNew Then
doc.DocumentElement.SelectNodes("connectionStrings")(0).AppendChild(node)
End If
doc.Save(path)
End Sub
- ASP.net
- 2k بازدید
- 9 تشکر