0

How can I add a new entity with EF where I have Id column which is defined as identity in the database ?

I get the following error:

Cannot insert explicit value for identity column in table 'AppsData' when IDENTITY_INSERT is set to OFF.

But I cannot set the Id to null, as it's an int in the database (not even nullable)

My function is:

    public Conduit.Mam.MaMDBEntityFramework.AppsData Add(Conduit.Mam.MaMDBEntityFramework.AppsData item)
    {   
        maMdbEntities.AddToAppsDatas(item);

        maMdbEntities.SaveChanges();

        return item;
    } 
4

3 に答える 3

2

identityedmxでもこの属性を作成する必要がありました

于 2012-11-08T12:07:54.750 に答える
2

文字列型やバイナリは省略されます。ステートメントは終了されました。

これは、列サイズよりも列に挿入するデータを意味します。dbの列サイズを増やします。

于 2012-11-08T12:08:14.383 に答える
2

Idをゼロ以外の整数値で設定する場合は、その初期化を削除するか、ゼロに設定します。

例外として、ID列であるID列に値があることを明確に示しています。

IDENTITY_INSERTがOFFに設定されている場合、テーブル'AppsData'のID列に明示的な値を挿入できません。

例外

文字列型やバイナリは省略されます。ステートメントは終了されました

送信データの長さがdbテーブルの列のデータ型の長さよりも大きい場合にのみ発生します。

于 2012-11-08T12:01:55.423 に答える