VS 2008, SqlCe 3.5
EntityFrameworkを学習しようとしていますが、基本的な挿入と更新が機能しません。 SqlCeデータベース(.sdf)をインクルードすると、ウィザードによってTest.edmx/designer.vbファイルが作成されます。それから、私は以下のように私のdatacontextを作成します。テーブル名はUsersです。SqlCeとEntityFrameworkを使用した挿入と更新の構文
私のエンティティクラスの構文は、ウェブ上の例と少し違うようです。それはちょっと混乱していて、なぜこれがわからないのですか?
An error occurred while updating the entries. See the InnerException for details.
{「サーバー生成キーおよびサーバ生成された値は、SQL Server Compactのサポートされていません。」}
:私は2つの異なる挿入方法を示す下にその両方が.SaveChangesライン上の例外を提供します
また、私は本当に。これらの問題に関するいくつかの援助のために非常に喜んでいるだろう何欠けている部分に書き込むための見当がつかないUpdateメソッド...
Public Sub Insert(ByVal user As Users)
Dim ctx As New TestDBEntities1(connection)
ctx.Users.Context.AddObject("Users", user)
ctx.Users.Context.SaveChanges()
End Sub
Public Sub Insert(ByVal user As Users)
Dim ctx As New TestDBEntities1(connection)
ctx.AddToUsers(user)
ctx.SaveChanges()
End Sub
Public Sub Update(ByVal user As Users)
Dim ctx As New TestDBEntities1(connection)
Dim q = (From n In ctx.Users Where n.Id = user.Id Select n).Single
' How to update ??
ctx.SaveChanges()
End Sub
http://stackoverflow.com/questions/2734424/c-4-0-ef-server-generated-keys-and-server-generated-values-are-not-supported-bの複製であるように見えます。 – SilverbackNet
それはどういう意味ですか? IDキーではない場合、自動生成された整数IDを持つことはできませんか?私は作成し、ハードコーディングによってそれらを更新し続ける必要がありますか? – bretddog
あなたは本当に鍵の作成を自分で処理する必要があります。 (私はそれらを「更新」しようとは勧めない)。 SQLS Compactではキーを生成できないため、ストアの生成に関するすべての機能は動作しません。上記のリンクで説明したGUIDアプローチを使用するか、テスト用に別のデータベースに切り替えるか、CE .NET 3.5のSQLiteなどの無料データベース用のバインディングが存在します。 – Marcanpilami