8

App.Config ファイルから F# の Linq-To-Sql データ プロバイダーに接続文字列を提供する方法はありますか。

テストのためだけに次のことを試しました。

let mutable connString = @"Data Source=PCSQLEXPRESS;Initial Catalog=NortwindDB;Integrated Security=True"
type SqlConnection = SqlDataConnection<ConnectionString = connString>

しかし、「これは定数式または有効なカスタム属性値ではありません」というエラー メッセージが表示されます。

ありがとう

4

3 に答える 3

14

型プロバイダー自体は、コンパイル時に開発する型 (あなたの場合はSqlConnection) を生成するためにハードコーディングされた接続文字列を必要としますが、実行時に使用される実際の接続文字列を次のように構成できます。

type SqlConnection = SqlDataConnection<"Data Source=PCSQLEXPRESS;Initial Catalog=NortwindDB;Integrated Security=True">
let runtimeConnStr = ...
type dataContext = SqlConnection.GetDataContext(runtimeConnStr)
于 2012-05-10T12:49:13.777 に答える
3

たぶん、「?ConnectionStringName」パラメータを使用すると、目的の場所に移動できます。

http://msdn.microsoft.com/en-us/library/hh362320(v=VS.110).aspx

于 2012-05-23T21:23:21.667 に答える
0

F# Type Providers and Continuous Integrationの回答でこれに対する解決策がある次の質問も参照してください。

于 2013-10-29T11:38:58.287 に答える