컴파일 된 Visual Basic .NET 응용 프로그램에서 데이터 소스가 어떻게 연결되어 있습니까?

StackOverflow https://stackoverflow.com/questions/1011007

문제

내 프로젝트에 새 데이터 소스를 추가하려고 할 때 "선택한 연결은 현재 프로젝트의 일부가 아닌 로컬 데이터 파일을 사용합니다. 파일을 프로젝트에 복사하고 연결을 수정 하시겠습니까? "

VB.net을 처음 접하고 일반적으로 비 스크립트 앱을 프로그래밍하기 때문에 이것은 다소 모호한 것 같습니다. 이 경우 데이터 소스는 .SDF SQL CE 파일입니다.

질문 1 : 데이터베이스를 프로젝트에 복사하고 싶다고 말하면 앱을 컴파일 한 후 어떻게 될까요? 데이터베이스는 어디에 있습니까? (다른 앱에서 어떻게 편집할까요?)

질문 2 : 포함하지 않으면 데이터 소스가 어떻게 계속 연결되어 있습니까? FileSystem Enviroiment 변수를 사용하여 링크 할 수 있습니까? %프로그램 파일%myappdir?

질문 3 : FTP와 같이 웹에서 읽기 전용 (읽기 만하면됩니다) 데이터 소스를 사용하라고 말할 수 있습니까?

미리 도움을 주셔서 감사합니다! =))

도움이 되었습니까?

해결책

Visual Studio는 프로젝트 폴더에 나머지 파일과 함께 모든 파일을 한 곳에 두려고합니다.

Q1 -SQL CE 데이터베이스는 원하는 곳이면 어디든지 가능하며, app.settings에서 ConnectionStrings 설정 섹션을 사용합니다. SQL CE는 단지 파일 일뿐입니다. 더 이상 아무것도없고, 어떤 응용 프로그램에서도 액세스 할 수 있습니다. IS는 앱에 컴파일되지 않고 배포 할 때만 여행합니다.

Q2에 대답하려면 - 아마도 가능하지만, 그것이 당신을 위해 자동으로 작동하는지 확실하지 않습니다.

Q3- FTP에서 읽으려면 FTP 클라이언트 지원을 앱에서 작업하고 백그라운드에서 다운로드하지 않는 한 아마도 그렇지 않을 것입니다. 또 다른 솔루션은 FTP를 로컬 드라이브에 매핑하고 거기에서 액세스하는 것입니다.

예를 들어, app.config에 연결 문자열 저장 (app.config에서 발췌) :

<connectionStrings>
   <add name="db" connectionString="Provider=Microsoft.SQLSERVER.OLEDB.CE.2.0; data source=c:SomePathToSDFfile" />
</connectionStrings>

응용 프로그램의 뒷부분에서 다음과 같이이 연결 문자열에 액세스하십시오. (System.Configuration에 대한 참조 추가).

  Dim c As Configuration.ConnectionStringSettingsCollection
  Dim cn As SqlClient.SqlConnection

  c = Configuration.ConfigurationManager.ConnectionStrings
  cn = New SqlClient.SqlConnection
  cn.ConnectionString = c.Item("db").ConnectionString
  cn.Open()
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top