1

次のような部分的な Linq クエリで静的メソッドを作成するというアイデアを思いつきました。

public partial class User
{
    public static User FindByGuid(string guid, ApplicationDataContext context)
    {
        return context.Users.Where(x => x.GUID == guid).Single();
    }
}

したがって、たとえば、次のようにして簡単にユーザーを見つけることができます。

using (var context = new ApplicationDataContext())
{
    var user = DataAccess.User.FindByGuid(UsersDropDown.SelectedValue, context);
}

これは認識された設計パターンですか? リポジトリ モデルと比較して、これを行うことの利点/欠点は何ですか?

4

1 に答える 1

1

ここでのあなたの行動に認識されたパターンは見られませんが、アプリケーションデータコンテキストを依存関係としてメソッドに渡すことにより、依存関係の注入を使用していることがわかります。ここでの問題は、依存関係がどこで開始されたかに関係なく、データコンテキストに引き続き緊密に結合されているため、単体テストがより困難になることです。

于 2009-05-13T20:42:39.837 に答える