1

データレイヤーテンプレートを生成しようとしています。Selects、Updates、Insertsを実行するとき、どの列に値が含まれているかわからないため、テンプレートをすべての列で機能させるというアイデアがあります。問題は、cmd.Parameters.AddWithValue( "@ Field"、this.Field);のような更新statemtentがある可能性があることです。その値がnullの場合、クエリは実行されません。この問題を回避するにはどうすればよいですか?

アップデート:

私は??を試しました 解決策ですが、エラー演算子を受け取りますか?オペランドstring(またはint)およびSystem.DBNullには適用できません。フィールドが実際にnullの場合にのみ機能するようですが、値がある場合は機能しません。次に、タイプ(object)DBNullをDBNullの前に配置しようとしましたが、それでも何もありません。

このフィールドへの(オブジェクト)の追加は機能しました!

ありがとう。

4

1 に答える 1

4
cmd.Parameters.AddWithValue("@Field", this.Field ?? DBNull.Value);

?? C#の合体演算子です。

于 2009-01-18T02:15:22.223 に答える