2012-03-02 4 views
0

웹 포스터 응용 프로그램이 있으며이를위한 "정의"파일을 만들고 싶습니다. 기본적으로 시작시에 프로그램으로 가져 오는 문자열 만 있습니다. 실행 파일을 변경하지 않고 업데이트 할 수 있도록 외부 소스에 저장하려고합니다.winform에 대한 영구 데이터 C#

"PosterDefinition"과 같이 새로운 정적 클래스를 만들고 응용 프로그램을 시작할 때 정의 파일을 가져 와서 거기에서 PosterDefintion 값을 설정하려고합니다.

어떻게 저장할지에 대해서는 프로그램 자체에서 데이터를 직렬화 할 수 있습니다 (한 번 프로세스).

의견을 말하십시오.

감사합니다.

답변

0

XML 파일로 저장하는 것이 좋습니다. 이렇게하면 LINQ-XML을 사용하여 신속하게 데이터를 가져올 수 있습니다. 당신이 할 수있는 일은 변경을 위해 파일을 보는 속성을 만드는 것입니다. Application 개체에 값을 캐시 할 수 있습니다. 몇 가지 요청 후 또는 각 요청 후에 파일을 확인하십시오. LINQ 또는 PLINQ가 빠르면 빠르기 때문에 요청에 오래 걸리지 않습니다. 여기

는 예를 들어, XML 문서입니다 :

<?xml version="1.0" encoding="utf-8"?> 
<Definition> 
    <Item> 
     <Title>t</Title> 
     <Something>Pie</Something> 
    </Item> 
</Definition> 

그리고 여기

using System.Xml; 
using System.Xml.Linq; 

XElement element = XElement.Load("definitions.xml"); 
XElement item = (from item in element.Elements() 
       where item.Elements().Where(i => (string)i.Element("Title") == "t") 
       select item.Element("Something")).First(); 

내가이 테스트 havn't는 내가 나쁜 오전 제목 t으로 항목의 뭔가에 액세스하는 방법입니다 LINQ 그래서 이것을 확인하십시오.

+0

XML을 사용자가 쉽게 읽을 수 있으므로이 문제가 발생하지 않도록하십시오. 바이너리 포맷터를 사용하려고합니다. – TheGateKeeper