to this question에서 연결 문자열을 우리 저장소에 푸시하지 않고 동료와 연결 문자열을 공유해야합니다. F # SQL 형식 공급자를 사용하면 코드에서 연결 문자열을 "하드 코드"해야합니다. 대답에서 제공된 해결 방법이 유망한 경우에도 유형 공급자없이 dB에 연결하는 방법이 있습니까?SQL 형식 공급자없이 SQL 데이터베이스에 연결 하시겠습니까?
이미 dB의 스키마/구조를 알고 있습니다. 연결할 수있는 다른 방법이 있습니까? 새로운 "ADO.NET 엔터티 데이터 모델"을 추가하여
#I "../packages/FSharp.Data.TypeProviders/lib/net40"
#r "System.Data.Entity"
#r "FSharp.Data.TypeProviders.dll"
open FSharp.Data.TypeProviders
type DB = EdmxFile<"MyDB.edmx">
let c = new DB.Model.ModelContainer("runtimeConnectionString")
query { for e in c.MyEntitySet do select e.Id }
당신은 (기존 DB 또는 처음부터) 비주얼 스튜디오에서 EDMX 파일을 만들 수 있습니다
* F # SQL 형식 공급자를 사용하면 코드에서 연결 문자열을 "하드 코드"하도록 강요합니다. * 이것이 사실이 아니므로 런타임에 연결 문자열을 전달할 수 있습니다. – DaveShaw
@DaveShaw에서 _data_ 연결 문자열을 사용하면 런타임에 전달할 수 있습니다. 그러나 _shape_ 연결 문자열은 소스 코드에서 상수 여야합니다. –
런타임에 연결 문자열을 변경하기 만하면 GitHub (디자인 타임이나 런타임은 아님)에 연결 문자열을 공개하지 않으려 고합니다. 연결 논리를 포함하는 dll을 만들 수 있으며 repo를 밀어 넣을 수 있습니다. 형식 공급자를 사용하지 않으면 항상 ADO를 통해 연결할 수 있습니다. – s952163