問題タブ [business-logic-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.

0 投票する
2 に答える
941 参照

c# - コード ビハインドまたは BusinessLogic クラスでこの関数を使用する必要がありますか

を使用してASP.NET Web Forms/C#います。

この関数を使用してDropDownLists、State から選択した州に基づいてCity を埋めていますDropDownList。StateDropDownListsと City には 3 つあります (Residential、Native、Office)。

これが私の機能です。

ID に基づくこの関数は、DropDownListsID 引数に基づいて適切な都市を埋めます。

これは現在 にあります。code behind私の質問は、この関数をここで使用する必要があるか、それとも自分の に移動する必要があるかBusiness Logic classです。これが私のCustomerBLL.cs

適切なアプローチとは何ですか。誰かがこれについて私を案内できますか?

どんな提案でも大歓迎です。

0 投票する
1 に答える
1080 参照

c# - 関数をコード ビハインドからビジネス ロジック レイヤー クラスに移動する

を使用してASP.NET Web Forms/C#います。

私は州の選択に基づいてcode behind都市を埋めるこの機能を持っています。DropDownListDropDownList

これが私の機能です。

関数に渡される引数は index と id です。インデックスはSelectedIndex状態DropDownListです。id は、DropDownList入力する必要がある都市です。

BLLクラスはこちら

関数を分離コードから BLL クラスに移動する必要があります。

これについてどうすればいいですか。

誰でもこれで私を助けることができますか? どんな提案でも大歓迎です。

0 投票する
1 に答える
262 参照

c# - Linq To SQL を使用する場合、BLL クラス内でデータ アクセスとビジネス ロジックを使用する必要がありますか?

を使用してASP.NET Web Forms/C#います。

私は自分のアプリケーションでのBLL実装について調査しました。DLL

多くの人が、使用はそれ自体をLinq To SQL置き換えると言っていることがわかりました。DAL

したがって、データにアクセスし、クラス自体の内部でビジネス ロジックを実装する必要がBLLあります。それが正しいかどうかはわかりません。

現在、私はクラスを持っていCustomerBLLます。データにアクセスし、その中にビジネスロジックを実装しています。

だから私の質問は、それは良いアプローチですか?

これに従うことはできますか?

また、現在BLL、クラスは 1 つしかありません。ページごとに 1 つまたは 1 つだけ使用するか、.aspx同様のページをグループ化する必要があります。

これが私のものですCustomerBLL.cs(いくつかの機能を含むだけです)。

どんな提案でも大歓迎です。

0 投票する
3 に答える
271 参照

c# - gridviewがBLL経由で値を表示していませんか?

コントロールがグリッドビューの値を返しません。

テーブルアダプタはクエリを正常に実行し、データを表示します。

これがコントロールからの私のコードです:

これが私のBLLです。

私のDALは次のようになります。

ここに画像の説明を入力してください

DALに直接接続すると、表示される値を取得できます。だから私のBLLに何か問題があると思いますが、それは何でしょうか?エラーメッセージは表示されません。

私のgridviewソース:

0 投票する
1 に答える
1096 参照

c# - ビジネスロジックとしてのWCF

私のアプリケーションの現在のアーキテクチャ計画は

UI-> WCF Bal-> Generic Dal-> Entity Model

一般的なDalメソッドと関連エンティティを作成しました。実行する特定の操作は、ビジネスロジックから処理されます。

私はwcfでビジネスロジックを作成しようとしていますが、以前は個別のエンティティに対して個別のクラスを実行していたため、WCFコンテキストからmはどうすればよいか混乱しましたか?

私は当初、次のような一般的な実装を持つインターフェイスを作成することを考えました

これで、このインターフェイスは、Product、Category、Customerなどのエンティティごとに異なる実装を持つ必要がありますが、wcfは1つのサービスクラスのみを持つことができます...

私が今何をすべきか考えていますか?

0 投票する
2 に答える
829 参照

wcf - WCF とビジネス ロジック層のシナリオによる例外処理

私のサービスは、ビジネス ロジック全体が配置されている BusinessLogicLayer メソッドを呼び出すだけです。BL によって発生した例外を処理するためのベスト プラクティスは何ですか? (致命的な例外だけでなく、ユーザーが見つからないときに BL がスローする UserNotFoundException のような「論理的な」ApplicationExceptions も知りたいです)。

これらの例外を、クライアントが表示する FaultExceptions にどこで変換する必要がありますか?

BL からビジネス例外をスローし、それらをサービス呼び出しにキャッチして FaultException に変換し、クライアントに返す必要がありますか? または BL は、すでに「クライアントに優しい」FaultExceptions を発生させる必要がありますか?

前もって感謝します :)

0 投票する
1 に答える
113 参照

model-view-controller - ログインしたユーザーをセッションから取得し、ビジネスレイヤーに渡すにはどうすればよいですか?

Weld で JSF、Hibernate、CDI を使用しています。私のアプリケーションは、ビュー (xhtml)、コントロール (リクエスト/セッション/ビュー スコープ Bean)、モデル (エンティティ)、およびビジネス (アプリケーション スコープ Bean としてマークされた BO) に分かれています。

モデルとビジネス レイヤーをビューとコントロールからできるだけ切り離すようにしています。つまり、すべての xhtmls + コントロール Bean を変更したい場合、ビジネス レイヤーとエンティティに影響を与えることなく可能です。

私の問題は次のとおりです。ビジネス層には、ログインしたユーザー (または少なくともそのプロファイル) を知る必要があるメソッドが多数あります。これは、制御層に返される結果に影響を与えるためです。

例: 編集するユーザーのリストを要求すると、管理者はすべての登録済みユーザーのリストを受け取り、管理者は自分のプロファイルの「下」にあるユーザーのみのリストを受け取ります。

セッション Bean (ログインしたユーザーを含む) をビジネス レイヤーに挿入したくありません。これは、カップリングが発生するためです (つまり、コントロール/ビュー レイヤーをいつでも変更することはできません)。

現在、ログに記録されたユーザーを BO のメソッドのパラメーターとして渡すことでこれを行っていますが、私にはそれが「間違っている」と感じています。コントロール層は、ログインしたユーザーとして必要な人を渡すことができ、ビジネス層はそれを決して知らないと考え続けています。

私の最後の質問は次のとおりです。

  1. 私のやり方に何か問題がありますか?それとも私が考えすぎですか?
  2. それを行うより良い方法はありますか?
0 投票する
2 に答える
1902 参照

domain-driven-design - 「保存」メソッドはビジネスドメインエンティティに属しますか?

ORMを使用していません。それで、「保存」メソッドが実際にビジネスドメインエンティティに属しているのか、それとも保存のためにビジネスドメインエンティティに渡されるサービスで抽象化する必要があるのか​​について議論しています。

例えば

また

0 投票する
2 に答える
423 参照

c# - マイクロオーム ツールはアプリケーション アーキテクチャのどこに配置されているか

「Select x,y,z From Customer」のような単純なステートメントは、データ アクセス層にあります。

特定の都市からの顧客のフィルタリングなどのロジックがクエリに含まれる場合、フィルタリングをビジネス レイヤーに配置し、メモリ内の顧客コレクションに対して実行する必要があります。

Micro ORM ツールについて考えると、次のようなロジックを含む SQL ステートメントが表示されることがよくあります。

このコード行をどこに置くべきですか? ビジネスレイヤーまたはデータアクセスレイヤーで?

ビジネスレイヤーに属する必要があるステートメント内にロジックがあります。しかし、それから私は持っています

BLL 内の Select ステートメント ??

これはすべて混乱しています。

0 投票する
7 に答える
11009 参照

c# - エンティティ フレームワークをデータ アクセス層として使用する場合、ビジネス ロジック層をどのように実装しますか?

3つのレイヤーがあるとしましょう

レイヤー 1: WPF プロジェクト (含まれるもの: xaml、viewmodels、mvvm フレームワーク)

レイヤー 2: ビジネス ロジック レイヤー (内容: プレーンな C# クラス)

第 3 層: エンティティ フレームワーク (内容: リポジトリ/データ アクセス クラス)

DAL(レイヤー3)をView(レイヤー1)に公開したくない場合、ビジネスロジックレイヤーをどのように実装しますか? BLL オブジェクトと DAL エンティティの間で値をやり取りするのに苦労しています。

助けていただけますか?