2011-10-01 1 views
0

wpf app (mvvm dp 사용)을 구축하고 고객 목록을 관리해야합니다 (최대 200 명의 고객) 이 문제를 처리하기위한 권장 방법은 무엇입니까? ? sql (mySql, sqlServer) 또는 다른 방법 (xml, 엑셀, 액세스)?wpf 응용 프로그램, SQL 데이터베이스 또는 XML에 권장되는 항목

, 그들은 동일한 네트워크에있어 (그것 또한 설치를

서로 다른 컴퓨터에서 다수의 사용자를 가지고있는 경우에
+0

동시 사용자 수는 몇 명입니까? 이 응용 프로그램이 동시에 여러 컴퓨터에서 실행 되나요, 아니면 하나만 실행됩니까? 다른 주체와 데이터를 공유해야합니까, 그렇다면 어떻게해야합니까? 고객 목록 이외의 다른 종류의 데이터를 관리해야합니까? 각 고객 기록에는 어떤 종류의 데이터가 들어 있습니까? –

+2

단일 컴퓨터에서 단일 사용자 응용 프로그램을 사용하는 경우 - [SQL Server Compact Edition] (http://www.microsoft.com/sqlserver/en/us)과 같은 ** 포함 된 ** 데이터베이스를 사용하는 것이 좋습니다. /editions/compact.aspx) ?? 아니 설치 (귀하의 응용 프로그램과 함께 프로세스 DLL로 복사), 그리고 여전히 (대부분) 본격적인 데이터베이스를 가지고 .... –

+0

@MichaelPetrotta 그 하나의 사용자가 될 필요가 있지만 (반드시). 하나의 기계. 다른 주체와 공유하는 것이 무엇을 의미합니까? – Maya

답변

1

을하지 않아도 때문에 XML의 장점을 볼 수 있고, 그 기계 영구, 공유 네트워크 연결이 예를 들어 SQL Server 또는 MySQL과 같은 중앙 데이터베이스를 사용하는 것이 좋습니다. 후자는 무료이며 전자는 가벼운 작업 부하의 경우 free edition (Express)에서 사용할 수 있습니다.

애플리케이션의 다른 사용자간에 데이터를 공유 할 필요가없는 경우 (고객 데이터가 동기화되지 않아도 상관 없음) SQLite 또는 SQL Server Compact Edition과 같은 경량의 내장 데이터베이스를 살펴보십시오. 매우 간단하고 설치 및 유지 보수가 쉽지만 데이터는 단일 컴퓨터에 남아 있습니다.

컴퓨터를 수동으로 동기화 할 때마다 iTunes가 컴퓨터와 iPhone간에 데이터를 동기화하는 것과 같이 일종의 수동 동기화를 기반으로 인프라를 구축 할 수 있지만 가능한 한 피하는 것이 가장 좋습니다. . 데이터베이스에는 가능한 한 많은 정보를 활용하려는 동시에 다수의 기본 제공 사용자가 다수 내장되어 있습니다.

+0

왜 XML 솔루션을 좋아하지 않는지 제발 설명해 주시겠습니까? (만약 내가 데이터를 공유하지 않고 단 한 명의 사용자 만이있는 경우) – Maya

+1

XML로 데이터를 저장하는 데있어 실제로는 * 잘못된 것은 없습니다. 나를 포함한 많은 개발자들이 그렇게합니다. 하지만 XML로 기존 직렬화 라이브러리를 사용하는 편이 더 좋습니다 ([ConfigurationSections] (http://msdn.microsoft.com/en-us/library/2tw134k3.aspx)와 같이). 필자는 종종 곧장 XML을 매우 빠르게 성장시킨 것처럼 보였고 처음부터 데이터베이스의 힘이 있었으면 좋겠다. 또한 데이터베이스는 [관계형 저장소] (http://en.wikipedia.org/wiki/Relational_model)를 훨씬 쉽게 만듭니다. –

1

의 목록이 20030이고 향후 다른 영구 데이터 요구 사항이 표시되지 않는 경우은 플랫 파일이 많다고 말합니다. 그러나 이는 또한 작은 데이터를 얼마나 자주 검색할지에 달려 있습니다.

나는 SQL Server의 큰 지지자이며 Express는 무료입니다. 그러나 당신은 문제를 과장하려고하지 않습니다. 귀하의 질문을 오해하지 않는 한 그것은 나의 평가입니다.

관련 문제