2009-08-13 1 views
1

Silverlight에서 폴링 메커니즘 (예/아니오 옵션과 함께 간단한 질문)을 구현해야하지만 데이터베이스를 사용할 수 없습니다. 클라이언트는 XML 파일 만 사용할 수 있다고 말합니다.Silverlight에서 DB가없는 폴링 메커니즘

실용 가능하다고 생각하십니까? 파일 무결성 및 이로부터 발생할 수있는 동시성 문제를 다루는 것에 대해 생각하고 있습니다. 사용자가 응답을 제출할 때 전체 파일을 잠그고 파일이 커질 수 있습니다.

제안 사항? 감사합니다. .

추신 : 내 이전 계정을 stackoverflow에서 잃어버린 이유를 이해할 수 없습니다.

답변

0

이전 프로젝트에 대해 살펴 봤는데 Silverlight의 서버 측 데이터 저장소에 대한 유일한 옵션은 백엔드 웹 서비스라고 생각합니다. Silverlight에서 투표, 검색 옵션 및 투표 검색 요청을 처리하려면 Asp.net에 무언가를 만들어야합니다. 이 백엔드를위한 최선의 선택은 데이터베이스라고 생각하지만이 데이터를 XML로 저장하고 LINQ-to-XML을 사용하여 검색 할 수 있다고 가정합니다.

1

사용자별로 별도의 XML 파일을 사용해 보셨습니까? 사용자가 XML 내에서 별도의 객체로 가져온 모든 설문을 직렬화 할 수 있습니다. 사용자가 하나의 파일을 공유하지 않으므로 잠금 필요성을 제거합니다. 반면에 작은 XML 파일이 많으면 많은 파일을 흩어지게하고 수 있습니다.은 집계하기가 어렵지만 격렬한 번거 로움. 예를 들어

, 당신은 사용자의 사용자 이름 또는 무언가의 일부 해시와 모든 파일의 이름을 수 있습니다, 그래서 당신과 같이 배치, a09r0awegamogm.xml 같은 파일이있을 것이다 :

<?xml version="1.0" encoding='UTF-8'?> 
<poll> 
    <title>My First Poll</title> 
    <answers> 
    <answer>D</answer> 
    <answer>C</answer> 
    <answer>A</answer> 
    <answer>E</answer> 
    </answers> 
</poll> 
0

가능성 I 참조 : - 사용자/설문 조사 당 하나의 파일 이동하고 배경 서비스를 사용하여 결과를 집계하십시오. - 결과와 함께 agregated xml 파일을 생성하는 백그라운드 서비스가 읽은 대기열에 사용자의 응답을 시작합니다. 그러나 데이터베이스가 없다면 큐잉 시스템이 없을 수도 있습니다 ...