|
격리된 저장소를 사용하면 데이터가 사용자에 의해 가상 파일 시스템에 항상 격리됩니다. 가상 파일 시스템은 루트 디렉터리의 단일 파일일 수도 있고 디렉터리 및 파일로 구성된 트리일 수도 있습니다. 격리된 저장소 데이터 컴파트먼트는 특정 저장소 위치가 아닌 추상적인 위치로, 데이터가 저장되는 실제 디렉터리 위치를 포함하는, 저장소라고 하는 격리된 저장소 파일 하나 이상으로 구성됩니다. 저장소에는 모든 유형의 데이터를 저장할 수 있습니다. 저장소는 보통 클라이언트에 있지만 응용 프로그램이 서버에서 격리된 저장소를 사용할 수도 있습니다. 그러나 Silverlight에서는 사용자가 정보를 이동할 수 있도록 하는 로밍 프로필은 지원하지 않습니다. 응용 프로그램이 사용할 수 있는 격리된 저장소의 양은 호스트 도메인이 특정 클라이언트 컴퓨터에서 사용할 수 있는 할당된 공간에 따라 달라집니다. 이와 같이 할당된 공간을 할당량 그룹이라고 합니다. 도메인의 응용 프로그램은 동일 도메인의 다른 모든 응용 프로그램과 할당량 그룹을 공유합니다. 따라서 동일한 도메인의 여러 응용 프로그램이 단일 할당량을 공유할 수 있습니다. 여기서 도메인이란 응용 프로그램 도메인이 아니라 Microsoft.com과 같은 가상 호스트 도메인입니다. |
2.할당량 그룹
할당량 그룹의 기본 크기는 1MB입니다. 응용 프로그램은 IsolatedStorageFile.IncreaseQuotaTo 메서드를 사용하여 할당량 그룹 크기를 늘리도록 요청할 수 있습니다. 사용자가 늘어난 크기를 승인하면 해당 크기가 새 할당량 그룹 크기가 되므로 도메인의 모든 응용 프로그램이 공유할 수 있습니다. |
IsolatedStorageFile 클래스 격리된 저장소 영역을 나타내며 파일 및 디렉터리가 들어 있습니다.
멤버
속성
|
3.IsolatedStorageFile 개체를 사용하는 방법
응용 프로그램에서 격리된 저장소 가져오기
public static void Demo(TextBlock outputBlock) { try { using (var store = IsolatedStorageFile.GetUserStoreForApplication()) { |
디렉터리 만들기
store.CreateDirectory("MyApp1"); |
파일로 구성된 파일 시스템 만들기
IsolatedStorageFileStream rootFile = store.CreateFile("InTheRoot.txt"); rootFile.Close();
|
파일에 쓰고 해당 내용 읽기
if (store.FileExists(filePath)) { try { using (StreamWriter sw = new StreamWriter(store.OpenFile(filePath, FileMode.Open, FileAccess.Write))) { sw.WriteLine("To do list:"); sw.WriteLine("1. Buy supplies."); } } catch (IsolatedStorageException ex) {
sb.AppendLine(ex.Message); } }
|
파일 삭제
try { if (store.FileExists(filePath)) { store.DeleteFile(filePath); } }
|
4.격리된 저장소를 사용하여 응용 프로그램 설정 저장 및 검색
Silverlight 버전 2에서 격리된 저장소를 사용하여 응용 프로그램 설정(응용 프로그램별 설정, 컴퓨터별 설정 및 사용자별 설정)을 저장할 수 있습니다. 이러한 설정의 범위는 응용 프로그램 .xap 파일의 전체 경로로 결정됩니다. 예를 들어, 페이지당 표시할 이미지 수, 페이지 레이아웃 사용자 지정 설정 등의 응용 프로그램 설정을 저장할 수 있습니다. IsolatedStorageSettings 클래스의 멤버를 사용하여 격리된 저장소에 응용 프로그램 설정을 저장합니다. 이 클래스는 이름/값 쌍을 저장하도록 설계된 사전을 구현합니다. Silverlight 2를 사용하여 격리된 저장소에 저장되는 모든 데이터와 마찬가지로 응용 프로그램 설정은 사용자 컴퓨터에 로컬로 저장됩니다. Windows Vista에서는 AppData\LocalLow 디렉터리에 정보가 저장됩니다. Apple Macintosh를 비롯한 다른 운영 체제 버전의 경우 정보는 AppData\Local 디렉터리에 저장됩니다. 격리된 저장소에 저장된 값은 로컬로 저장되며 로밍에 사용할 수 없습니다. |
응용 프로그램 설정 Dictionary 얻기
IsolatedStorageSettings appSettings = IsolatedStorageSettings.ApplicationSettings; |
키/값 쌍을 사전에 추가하려면 Add 메서드를 호출합니다.
appSettings.Add("email", "ehdrnsep@nate.com"); |
응용 프로그램 설정 사전에서 값을 검색
PageTitle.Text = (string)appSettings["email"]; |
응용 프로그램 설정 사전에서 값을 변경하려면
appSettings["email"] = "ehdrnsep@nate.com"; |
응용 프로그램 설정 사전에서 항목을 삭제
appSettings.Remove("email"); |
출처 : msdn 격리된 저장소