asp.net lit et modifie le code d'implémentation du fichier de configuration

高洛峰
Libérer: 2016-12-24 13:11:51
original
1294 Les gens l'ont consulté

Ajoutez le fichier app.config au projet :

Cliquez avec le bouton droit sur le nom du projet, sélectionnez "Ajouter" → "Ajouter un nouvel élément", dans la boîte de dialogue "Ajouter un nouvel élément" qui apparaît, sélectionnez « Ajouter un fichier de configuration d'application » ; si le projet n'a pas de fichier de configuration auparavant, le nom du fichier par défaut est « app.config », cliquez sur « OK ». Le fichier app.config qui apparaît dans la vue Concepteur est :

🎜>Une fois le projet compilé, deux fichiers de configuration apparaîtront sous le fichier binDebuge (en prenant ce projet comme exemple), l'un nommé "JxcManagement.EXE.config" et l'autre nommé "JxcManagement.vshost.exe.config"". Le premier fichier est le fichier de configuration réellement utilisé par le projet, et toutes les modifications apportées pendant l'exécution du programme seront enregistrées ici ; le deuxième fichier est le fichier de synchronisation du code original "app.config", qui n'aura pas lieu pendant l'exécution du projet ; Le programme est en cours d'exécution.
2. Section de configuration connectionStrings :
Veuillez noter : si votre version SQL est la version 2005 Express, le nom de l'instance du serveur SQL d'installation par défaut est localhostSQLExpress. Vous devez modifier la phrase "Data Source=localhost;" à "Data Source=localhostSQLExpress;", n'ajoutez pas d'espaces des deux côtés du signe égal.


section de configuration appSettings :
<connectionStrings> 
<clear /> 
<addname="conJxcBook" 
connectionString="Data Source=localhost;Initial Catalog=jxcbook;User ID=sa;password=********" 
providerName="System.Data.SqlClient" /> 
</connectionStrings>
Copier après la connexion
la section de configuration appSettings est la configuration de l'ensemble du programme. S'il s'agit de la configuration actuelle. utilisateur, veuillez utiliser La section de configuration userSettings a le même format que les exigences d'écriture de configuration suivantes.



Lire et mettre à jour app.config
<appSettings> 
<clear /> 
<addkey="userName"value="" /> 
<addkey="password"value="" /> 
<addkey="Department"value="" /> 
<addkey="returnValue"value="" /> 
<addkey="pwdPattern"value="" /> 
<addkey="userPattern"value="" /> 
</appSettings>
Copier après la connexion
Lire et écrire l'application. .config, reportez-vous à l'article en ligne : http://www.codeproject.com/csharp/SystemConfiguration.asp intitulé "Read/Write App.Config File with .NET 2.0".

Veuillez noter : pour utiliser le code suivant pour accéder au fichier app.config, en plus d'ajouter une référence à System.Configuration, vous devez également ajouter une référence à System.Configuration.dll dans le projet.
4.1 Lire la section de configuration connectionStrings

4.2 Mettre à jour la section de configuration connectionStrings
///<summary> 
///依据连接串名字connectionName返回数据连接字符串 
///</summary> 
///<param name="connectionName"></param> 
///<returns></returns> 
private static string GetConnectionStringsConfig(string connectionName) 
{ 
string connectionString = 
ConfigurationManager.ConnectionStrings[connectionName].ConnectionString.ToString(); 
Console.WriteLine(connectionString); 
return connectionString; 
}
Copier après la connexion

4.3 Lire la section de configuration appStrings
///<summary> 
///更新连接字符串 
///</summary> 
///<param name="newName">连接字符串名称</param> 
///<param name="newConString">连接字符串内容</param> 
///<param name="newProviderName">数据提供程序名称</param> 
private static void UpdateConnectionStringsConfig(string newName, 
string newConString, 
string newProviderName) 
{ 
bool isModified = false; //记录该连接串是否已经存在 
//如果要更改的连接串已经存在 
if (ConfigurationManager.ConnectionStrings[newName] != null) 
{ 
isModified = true; 
} 
//新建一个连接字符串实例 
ConnectionStringSettings mySettings = 
new ConnectionStringSettings(newName, newConString, newProviderName); 
// 打开可执行的配置文件*.exe.config 
Configuration config = 
ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); 
// 如果连接串已存在,首先删除它 
if (isModified) 
{ 
config.ConnectionStrings.ConnectionStrings.Remove(newName); 
} 
// 将新的连接串添加到配置文件中. 
config.ConnectionStrings.ConnectionStrings.Add(mySettings); 
// 保存对配置文件所作的更改 
config.Save(ConfigurationSaveMode.Modified); 
// 强制重新载入配置文件的ConnectionStrings配置节 
ConfigurationManager.RefreshSection("ConnectionStrings"); 
}
Copier après la connexion

4.4 Mettre à jour Section de configuration connectionStrings
///<summary> 
///返回*.exe.config文件中appSettings配置节的value项 
///</summary> 
///<param name="strKey"></param> 
///<returns></returns> 
private static string GetAppConfig(string strKey) 
{ 
foreach (string key in ConfigurationManager.AppSettings) 
{ 
if (key == strKey) 
{ 
return ConfigurationManager.AppSettings[strKey]; 
} 
} 
return null; 
}
Copier après la connexion

///<summary> 
///在*.exe.config文件中appSettings配置节增加一对键、值对 
///</summary> 
///<param name="newKey"></param> 
///<param name="newValue"></param> 
private static void UpdateAppConfig(string newKey, string newValue) 
{ 
bool isModified = false; 
foreach (string key in ConfigurationManager.AppSettings) 
{ 
if(key==newKey) 
{ 
isModified = true; 
} 
} 

// Open App.Config of executable 
Configuration config = 
ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); 
// You need to remove the old settings object before you can replace it 
if (isModified) 
{ 
config.AppSettings.Settings.Remove(newKey); 
} 
// Add an Application Setting. 
config.AppSettings.Settings.Add(newKey,newValue); 
// Save the changes in App.config file. 
config.Save(ConfigurationSaveMode.Modified); 
// Force a reload of a changed section. 
ConfigurationManager.RefreshSection("appSettings"); 
}
Copier après la connexion
/// <summary> 
/// 写入Key,Value 到XML文件 
/// </summary> 
/// <param name="Key"></param> 
/// <param name="Value"></param> 
public static void SaveConfig(string Key,string Value) 
{ 
XmlDocument doc = new XmlDocument(); 
//获得配置文件的全路径 
string strFileName = AppDomain.CurrentDomain.BaseDirectory.ToString() + "App.config"; 
doc.Load(strFileName); 
//找出名称为“add”的所有元素 
XmlNodeList nodes = doc.GetElementsByTagName("add"); 
for (int i = 0; i < nodes.Count; i++) 
{ 
//获得将当前元素的key属性 
XmlAttribute att = nodes[i].Attributes["key"]; 
//根据元素的第一个属性来判断当前的元素是不是目标元素 
if (att.Value == Key) 
{ 
//对目标元素中的第二个属性赋值 
att = nodes[i].Attributes["value"]; 

att.Value = Value; 
break; 
} 
} 
//保存上面的修改 
doc.Save(strFileName); 

}
Copier après la connexion


Pour plus d'articles sur la lecture et la modification du code d'implémentation du fichier de configuration asp.net, veuillez faire attention au site Web chinois de PHP !

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal