2008-08-17 13 views
3

私はC#.NET 3.5でGridViewを使用していますが、AdapterモデルからLINQからSQLにデータを取得するオブジェクトに基になるDataSourceを変換しました。つまりGetData()などのビジネスオブジェクトreturnsGetData()などGridViewの削除が機能しない

デンマークとUpdateではすべてがうまくいっていて、条件付きSelectステートメントは期待通りに機能しますが、Delete関数を動作させることはできません。 IDまたはオブジェクト全体を渡すだけですが、プロパティが設定されていない "new"オブジェクトに渡されています。私はちょうどObjectDataSourceの古いOldValuesParameterFormatString="original_{0}"モンスターが混乱を再び引き起こしているのか疑問に思っています。

誰にもアイデアはありますか?

+0

SQLプロファイラまたは一部のプロファイラツールでdeleteコマンドが実行されているかどうかを確認しましたか? –

+0

はい - ビジネスレイヤーでdelete関数が呼び出されていますが、渡されるオブジェクトは空のオブジェクトです。つまりnullではありませんが、オブジェクトのメンバーはnullとゼロです。 – Guy

答えて

6

解決策が見つかりました。 GridViewのDataKeyNamesプロパティを、データが返すユニークなキー(この場合は古典的なIDフィールド)に設定する必要がありました。 Gridがリフレッシュされたときに、このプロパティが "unset"されていると思います。

関連する問題