問題タブ [business-layer]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
asp.net-mvc - SignalR と ASP.NET MVC: ビジネス レイヤーでの統合
私たちのアプリケーションはいくつかのレイヤーに分かれています。最も重要なものは次のとおりです。
- データレイヤー
- ビジネスレイヤー
- プレゼンテーション層 (ASP.NET MVC 5)
ビジネス層は、SignalR (プレゼンテーション層) を介して、接続されたクライアントにいくつかの情報をライブ ブロードキャストする必要があります。それを行うためのベストプラクティスは何ですか?
ビジネス層は OWIN を使用して SignalR サーバーを自己ホストする必要がありますか? それとも、プレゼンテーション層が情報をプレゼンテーション層にプッシュするためにビジネス層によって呼び出される Web サービス (シグナルロジックを保持する) を定義する場合、よりクリーンですか?
より良いアイデアはありますか?
どうもありがとうレヴィ
c# - ビジネス層オブジェクトをasp.netマスターページのパブリックプロパティとして宣言するのは良い動きですか?
私は現在、ASP.Net C# アプリケーションで作業しており、データセットとビジネス レイヤーで DAL デザイン パターンを使用しています。
通常、C# コードでデータを要求するときは、ビジネス レイヤー オブジェクトを作成します。
次に、BLLAccount で宣言した関数を呼び出すことで、それを操作できます。oblAccount.GetAccounts();
このルーチンは、すべてのページで、すべてのイベント スコープ内のすべてのデータ要求で繰り返されます。これはすぐに面倒になることを理解できるので、毎回同じオブジェクトを再作成する必要がないように、ページ プロパティを宣言しました。
このように、オブジェクトは必要なときにのみ作成され、すべてのイベント スコープで再利用できます。これはページで便利ですが、今は多くのページを作成しており、このソリューションでさえ面倒です。私が最初に考えたのは、現在マスターページと子ページを使用しているので、ページ プロパティをマスターページに配置して、この小さなスニペットを使用して aspx のマスターページを参照してみませんか?
私のコードでは、次のように参照します。
これはクールで非常にうまく機能しますが、これがサーバーのメモリとアプリケーションのパフォーマンスにどのような影響を与えるかはわかりません. 長期間使用されていない場合、ページ プロパティはクリーンアップされますか? 初期負荷が重すぎませんか?ビジネスレイヤー自体にコンストラクターを作成する方が良いですか、それともその部分はあまり重要ではありませんか?
c# - これらのメソッドをパラメータ化するにはどうすればよいですか?
このようなビジネスレイヤーにメソッドがあります。
私のデータアクセスレイヤーでは、このような非クエリの実行を作成しました。
私のデータベース接続レイヤーでは、このように実装しました。
私はこれらのメソッドを 3 つの別々のクラスに持っています。私が知りたいのは、レイヤー アーキテクチャを変更せずにここで文字列連結を使用しているため、パラメーター化されたクエリを使用するようにこれらのメソッドを変更する方法です。どうすればそれを達成できますか?
asp.net-mvc - asp.net mvc で挿入、更新、削除メソッドを配置する場所
ストアドプロシージャを使用して挿入、更新、削除メソッドをどこに配置するかを尋ねたいです。Dataaccess とビジネス ロジック クラスのクラス ライブラリを追加したので、mvc 4 プロジェクトでこのクラス ライブラリを参照しました。ここで、挿入、更新、削除メソッドを mvc プロジェクト モデルまたはクラス ライブラリ BL クラスのどこに配置するかを知りたい
c# - 単純なデータ操作: エンティティ モデルまたはビジネス レイヤーで?
私は、従来のデータ/ビジネス/プレゼンテーションの階層化アプローチを実装するasp.net MVCアプリケーションに取り組んでいます。
私のエンティティ モデル (人を表す) の 1 つには、「州」のフィールドを含む住所/連絡先情報が含まれています。私のデータ ソース (ほとんど制御できません) は、州の値をフルテキストで提供します (例: "カリフォルニア" と "CA"、"フロリダ" と "FL" など)。
フルテキスト値を略語に変換するために使用する静的ヘルパー クラスを作成しました。
私の質問は、このヘルパー クラスをどこで参照し、変換をどこで行うべきかということです。
次のオプションが表示されます。
- この静的クラスを参照し、get 時に変換を実行するモデルでアクセサーを使用します。次のようなもの:
このエンティティ モデルが使用されるたびに、ビジネス レイヤーで変換を実行します。
この値が表示されるたびに、プレゼンテーション層で変換を実行します
これを実際のモデルで (get アクセサーを介して) 行う単純さが気に入っていますが、これはビジネス ロジックのような匂いがします。他のオプションは、これを多くの場所で変換する必要があることを意味します (ロジックの複製、人物リストのトラバースなど)。
ありがとう。