0

wpf のエンティティ フレームワークを使用して、ID 列と 3 つの「通常の」列を持つテーブルに行を挿入しようとしています。しかし、私はこのエラーメッセージを受け取りました: IDENTITY_INSERT が OFF に設定されている場合、テーブル 'MyTable' の ID 列に明示的な値を挿入できません桁:

        var newuser = new User();
        newuser.SurName = surNameTextBox.Text;
        newuser.Name = nameTextBox.Text;
        newuser.Age = Int32.Parse(ageTextBox.Text);
        context.AddToUsers(newuser);
        context.SaveChanges();

誰でもこの問題を解決するのを手伝ってくれますか?

4

2 に答える 2

2

私はエンティティ フレームワークに詳しくありませんが、好奇心旺盛な方のために、これは ID 列への挿入を有効にするための MS SQL コマンドです。

SET IDENTITY_INSERT tablename ON

Wonko to Sane に同意します。問題はほぼ確実に AddToUsers メソッドにあります。

于 2010-08-11T19:48:10.117 に答える
1

ID 列は実際に自分自身を更新します。それがその目的です。

これが User の更新に使用している唯一のコードである場合は、DataContext の AddToUsers メソッドを確認 (または投稿) します。

于 2010-08-11T13:20:09.573 に答える