0

subsonic 3 をテストしています。データベースにクエリを実行できますが、レコードを挿入すると例外が発生します。これが私のコードです:

クライアント lClient = new Client(); lClient.Name = "ピーター"; lClient.FullName = "リチャーズ"; lCliente.Save();

そして、この生成されたコードに null 参照例外があります。

var newKey=_repo.Add(this,provider);

どんな助けでも大歓迎です。

ActiveRecords を使用しています

4

4 に答える 4

1

次のようなコードで、同様の問題がありました。

var pending = myTable.SingleOrDefault(x => x.Id == 1);
if (pending == null)
    pending = new myTable();

pending.Id = 1;
pending.MyDate = DateTime.Now;
pending.MyString = someString;
pending.Save();

これは、空のテーブルで初めて実行したときに機能しましたが、2回目の更新時には機能しませんでした。subsonic リポジトリ内のどこかで nullreference 例外が発生しました。解決策は、Rob が提案したように、主キーを追加することでした。

私はそれについて言及したいと思っていました(Robに感謝します).

于 2009-11-10T09:10:04.800 に答える
0

null参照例外は実際にどこで発生しますか? _repoヌルですか?

「クライアント」テーブルに null 許容ではない列がなく、値を設定していないことを再確認してください。

また、PK が正しく処理されていることを確認してください ([Property.IsForeignKey=true;]属性があることを確認してください) 。

于 2009-07-21T16:14:32.300 に答える
0

テーブルに PrimaryKey がありますか? それはそうではないように聞こえます。そうでない場合 - これはあなたの問題です。

于 2009-08-21T19:01:17.423 に答える