Linq-to-SQLクラスによって生成されるすべてのSQLステートメントにデフォルトのwhere句を追加することは可能ですか?
Customerクラスを持つカスタムDataContextがあります。NULL
CustomerクラスにはDeleted属性があります。これは、テーブルをクエリするときは常にこれになりたいものです。
たとえば、次のように書くことができます。
List<Customer> customers = db.Customers.ToList<Customer>();
しかし、実際に取得します。
List<Customer> customers = db.Customers.Where(o => o.Deleted == null).ToList<Customer>();
「削除された」データをDBに保持したいのですが、.NETコードで表示する必要はありません。この種のデフォルトは便利なので、すべてのクエリにフィルターを追加することを覚えておく必要はありません。