3

F# アプリケーションで LINQ を適切に動作させようとしています ( http://msdn.microsoft.com/en-us/library/hh361033.aspxの記事に基づく)。ただし、いくつかのプロパティと関数が欠落しているようです。

たとえば、次の行を追加しようとすると:

db.DataContext.Log <- System.Console.Out

エラー メッセージが表示されます: フィールド、コンストラクター、またはメンバー「ログ」が定義されていません。

同様に、InsertOnSubmit や InsertAllOnSubmit などの関数が不足しています。データベースのクエリを管理しましたが、現時点では、これらの関数が欠落している場合は何も挿入できません。

コード例:

open System
open System.Data
open System.Data.Linq
open Microsoft.FSharp.Data.TypeProviders
open Microsoft.FSharp.Linq

type internal dbSchema = SqlEntityConnection<"Data Source=localhost;Initial catalog=testDb;Integrated Security=SSPI;">

[<EntryPoint>]
let main argv = 

    let db = dbSchema.GetDataContext()
    db.DataContext.Log <- System.Console.Out // Failure: Log not defined.
    let names = [|"Foo"; "Bar"|]
    let newVals = 
        [ for name in names -> new dbSchema.ServiceTypes.Items(Name = name) ]

    db.Items.InsertAllOnSubmit(newVals) // Same with InsertAllOnSubmit.

    0

ここで何が欠けているのでしょうか?

4

1 に答える 1

3

@mydogisbox さて、ここに行きます:

行で:

type internal dbSchema = SqlEntityConnection<"Data Source=localhost;Initial catalog=testDb;Integrated Security=SSPI;">

SqlDataConnectionの代わりに使ってみてくださいSqlEntityConnection。それはうまくいくはずです。

于 2013-07-27T03:49:21.350 に答える