質問

最近、私は、新たなケプロジェクトは、この事業の授業DBML参照です。私のビジネス層の授業ではなくアクセスの離散データの層方法として返された蔵DTOます。のデータ層がプロジェクトDTOのは以下のような:

(from c in dataContext.Customers
where c.Active == true 
select new DTO.Customer
{
   CustomerID = c.CustomerID,
   Name = c.CustomerName,
   ...
}).ToList()

このDTO物を追加し、このよううためのより良いアプローチをタイト結合とビジネス&データの層もしくは試験を実施できる事業層なデータベースとつだと感じています。

私の質問は、この良い実践?, があるので、の発生をDTOのもよSQLMetal)、その他の問題が私はストライクとしてのプロジェクトが進行していきます。

役に立ちましたか?

解決

どうか分かりませんでしまってい類似コードにな近年の過去からも感じられるようにと向上の分離に懸念を用い、自分の授業ではなく、LINQ-デザイナー-発生するわれわれの行ってきた私の願います。

している場合だけを返すIQueryable<Customer> の代わりにIList<Customer> からのデータにアクセス方法です。以来、IQueryable<T> を継承IEnumerable<T> 他のアプリは対処できるものではないでしょうか。きものに変換するとリストが本当に必要です。

このことができる動的に変更検索するとなかなか簡単にminimze量のデータから返されたSQLサーバーです。

E.g.場合はメソッドシグニチャーが IQueryable<Customer> GetCustomers()などのシングルのお客様を呼び出しGetCustomers().場所(c=>c.CustomerID==101).シングル();

この例では一つだけを記録したときに返されることになデータベースからは思います現在のコードを返しますかすべてのお客様にはおす必要書分離方法およびこのように非常に繰り返しコード)について、すべてのものがありますのフィルターです。

他のヒント

私の考えではほとんどの場合DTO物が不要に対LINQ.発生するLINQの授業も簡単にできます。LINQする能力クエリのデータから異なった源を同一ます。できる能力試験のお問合せに対しリストのオブジェをdbです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top