2011-10-13 2 views
2

이 질문을 읽는 데 시간을내어 주신 모든 멤버에게 인사드립니다.C# 및 ado.net 응용 프로그램의 이식성 문제

데이터베이스에서 임의의 질문을 받아서 ado.net을 사용하여 인터페이스 (C#)에 넣는 퀴즈 시스템 용 응용 프로그램을 준비 중입니다.

제 질문은 프로그램이 이식성이 있어야합니다. 즉, 모든 사용자에게 SQL Server를 설치해야합니다. (사용자 SQL 서버 드라이버 인 경우).

이 문제의 해결 방법은 무엇입니까 ??

답변

1

SQL Server를 사용하지 마십시오.

SQLite과 같은 데이터베이스를 ADO.NET을 통해 사용할 수 있으며 별도의 데이터베이스 설치가 필요하지 않고 응용 프로그램과 함께 배포 할 수 있습니다.

이 방법은 실제 데이터베이스 요구 사항에 비해 충분하지 않을 수도 있습니다.

4

Sql CE (압축) 데이터베이스를 선택할 수 있습니다. Scott Guthrie에서

블로그 :

SQL의 CE 그것을 사용하기 위해 데이터베이스 서버를 셋업을 실행하거나 설치할 필요가 없습니다. SQL CE 바이너리 을 ASP.NET 응용 프로그램의 \ bin 디렉터리에 복사하면 웹 응용 프로그램에서 데이터베이스 엔진으로 사용할 수 있습니다. 실행을 위해 설정이나 추가 보안 권한이 필요하지 않습니다. 시스템에 관리자 계정이있는 경우 이 필요하지 않습니다. 웹 응용 프로그램을 모든 서버에 복사하면 제대로 작동합니다. 이는 웹 호스팅 환경에서 실행중인 중간 신뢰 어플리케이션의 경우에도 마찬가지입니다.

0

나는 AVD의 대답을 좋아하고 아마도 갈 길이 멀지 만 XML에 linq를 사용하는 것이 이식성을위한 좋은 대안이 될 것이다.

0

DataSet을 이진 파일로 serialize합니다.

DataSet ds = GetData(); 
ds.RemotingFormat = SerializationFormat.Binary; 
BinaryFormatter bin = new BinaryFormatter(); 
bin.Serialize(stream, ds);