2012-02-02 20 views
0

のためのパフォーマンスの向上、私は私のMVCアプリケーションのパフォーマンスについて、次の二つの質問があります: - 現在私はasp.net MVC 3 Webアプリケーションに取り組んでいますasp.net MVC 3アプリケーション

  1. を私はすべてのビジネスロジックを1つのモデルリポジトリクラスに実装していますが、リポジトリの実装が(コード行数に関して)巨大なものになることを期待していますが、このリポジトリクラスを維持するのが難しくありません。しかし、私の質問は、すべてのエンティティのすべてのビジネスログインを実装する1つのリポジトリクラスを持つことは、複数のリポジトリを持つことと比較してアプリケーションのパフォーマンスに悪影響を及ぼす可能性がありますか?

  2. 現在、Dbの最初のapprachを使用しているので、クライアント側の検証とヘルパーメソッドを部分クラスとメタ形式で実装するエンティティプロパティのデータ注釈を追加しています。など

    [MetadataType(typeof(Classes_validation))] 
    
        public partial class Class 
        { 
    

    //コードをここに

    んので、マイナスのアプリケーションのパフォーマンスに影響を与えることができ、各エンティティに複数の部分クラスを持つのだろうか? BR

答えて

1

いいえ、あなたのメソッドのアクティビティの種類がもっと重要です。これは対処するのが非常に難しく、なぜビジネスロジックを別のクラスに転送しないのでしょうか。

+0

返信ありがとうございます。私は同じトランザクションで2つ以上のリポジトリクラスが必要な場合に部分的な更新の問題に直面していることに敬意を表しているので、複数のリポジトリを持つことは望ましくありません。 –

+0

次に、作業パターンの単位を使用します。あなたは長期的には感謝するでしょう。本質的に、あなたのコンテキストクラスは、(あなたが作成したIUnitOfWorkという名前のインターフェイスを介して)各リポジトリに渡され、各リポジトリに作業を実行します。トップレベルでは、すべての作業を送信するためにコンテキスト上のSaveChanged()を使用します。 Google:作業単位のフレームワークのフレームワークで、たくさんの実装が見つかります。 1つの場所にすべてのコードを投げて1つの巨大なクラスにならないでください、将来の開発者はあなたを呪います:) –

関連する問題