App.Config XML읽고 쓰기..
App.Config XML파일을 읽고 쓰는 간단한 함수를 하나 만들어 봤습니다..
더 좋은 정보 있으면 리플 달아 주세요…
private string AppConfigRead(string keyName)
{
string strReturn;
Configuration currentConfig =
ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
if (currentConfig.AppSettings.Settings.AllKeys.Contains(keyName))
strReturn = currentConfig.AppSettings.Settings[keyName].Value;
else
strReturn = ""; //키가없으면.
return strReturn;
}
private bool AppConfigWrite(string keyName, string value)
{
Configuration currentConfig =
ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
if (currentConfig.AppSettings.Settings.AllKeys.Contains(keyName)) //키가 있으면
currentConfig.AppSettings.Settings[keyName].Value = value;
else //키가 없으면
currentConfig.AppSettings.Settings.Add(keyName, value);
currentConfig.Save();
ConfigurationManager.RefreshSection("appSettings"); // 내용 갱신
return true;
}
출처 : http://www.devpia.com/MAEUL/Contents/Detail.aspx?BoardID=18&MAEULNo=8&no=1699&ref=1699
우선 위 함수를 사용하려면 참조 추가와 namespace 추가가 필요합니다.
1) System.configuration <- 참조 추가
2) using System.Configuration; <- 추가
그렇게 하고도.. 위의 소스에서 Contains 라는걸 찾을 수 없어서 제맘대로 수정했습니다.
정석인진 모르겠지만..돌아가니 참고하실분은 하세요.
public static string AppConfigRead(string keyName)
{
string strReturn = "";
Configuration currentConfig =
ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
bool bIsKey = false;
foreach (string key in currentConfig.AppSettings.Settings.AllKeys)
{
if (key.StartsWith(keyName))
{
strReturn = currentConfig.AppSettings.Settings[keyName].Value;
bIsKey = true;
break;
}
}
if(bIsKey == false)
return string.Empty;
return strReturn;
}
public static bool AppConfigWrite(string keyName, string value)
{
Configuration currentConfig =
ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
if (currentConfig.AppSettings.Settings.Count != 0)
{
bool bIsKey = false;
foreach (string key in currentConfig.AppSettings.Settings.AllKeys)
{
if (key.StartsWith(keyName))
{
currentConfig.AppSettings.Settings[keyName].Value = value;
bIsKey = true;
break;
}
}
if ( bIsKey == false ) //키가 없으면
{
currentConfig.AppSettings.Settings.Add(keyName, value);
}
}
else
{
currentConfig.AppSettings.Settings.Add(keyName, value);
}
currentConfig.Save();
ConfigurationManager.RefreshSection("appSettings"); // 내용 갱신
return true;
}
'Programming > C#' 카테고리의 다른 글
화살표 그리기(.NET Pen Class) (0) | 2010.07.16 |
---|---|
.NET 중복 실행 방지 (0) | 2010.07.16 |
ini파일을 간단히...사용하자. (0) | 2010.07.15 |
C# (윈폼/콘솔) 관련 사이트 (0) | 2010.07.15 |
[펌] 모달리스 다이얼로그 Enter, ESC 키 무시 방법과 소멸 방법 (0) | 2010.07.15 |