2016-12-01 2 views
-1

はので、私は私の機能で、このコードを持って使用してデータベースに新しいデータを挿入します(ボタンのクリックによって活性化されます) 。 。C#のEF6.0

エントリId INTアイデンティティ(1,1)主キー[nullではない]、

PRODID INT外部キー[nullではない]、

prodQtyのINT [NULL]、

hospId INT外部キー[ヌル]、

contID int外部キー[nullではない]、

freqMaintenanceはint [NULLでない]、

dateRec日[NULLでない]デフォルトのSYSDATE、

EMPID int外部キー[nullではない]、

承認されたビット[ヌル]、SQLサーバコンパクトな4.0 EF6を使用して

イム。 0+ Visual Studio。

私がしたいのは、テーブルにデータを挿入することです。私は.SaveChanges.SubmitChangesを使ってみましたが、構文に誤りがあります。

+0

あなたの 'ctx'オブジェクトに' ent'とは何ですか? – kat1330

+0

entは私が作成したオブジェクトです。 –

答えて

0

MSDNによると、あなたはこのように新しいエンティティを挿入することができます。

entry ent = new entry { prodId = query1 , prodQty = int.Parse(textBox.Text) , hospId = query4 , contId = query5 , freqMaintenance = int.Parse(textBox1.Text), empId = this.emp }); 
ctx.entries.Add(ent); 
ctx.SaveChanges(); 

また、同じ記事によると、あなたは明示的にその状態を割り当てることによって、コンテキストに新しいエンティティを追加することができますが、「追加」である:

entry ent = new entry { prodId = query1 , prodQty = int.Parse(textBox.Text) , hospId = query4 , contId = query5 , freqMaintenance = int.Parse(textBox1.Text), empId = this.emp }); 
ctx.Entry(ent).State = EntityState.Added; 
ctx.SaveChanges(); 

コンテキストの実装方法がわかりませんが、構文の誤りはおそらくent

ctxのためです。 .SubmitChanges();

+0

それは私にこの例外を投げます: '例外がスローされました: 'System.Data.Entity.Infrastructure.DbUpdateException' in EntityFramework.dll' –

+0

@JulioMotolその場合、おそらくあなたの問題はコンテキストではないと思います!何とか重複したIDに問題があるようです。私は 'identity(1,1)'を使用しているのを見ていますが、IDですべてが正常に見えるのですか? yuorエンティティのフレームワークを更新しましたか? – kat1330

+0

@ JulioMotolたぶんこの記事は、エラーメッセージを解決するのに役立ちます:http://www.technologycrowds.com/2015/07/system-data-entity-infrastructure-DbUpdateException.html – kat1330

0

次のコードはあなたのために働くかもしれません。

ctx.Set<Entry>().Add(ent); 
ctx.SaveChanges();