問題タブ [bll]
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.
entity-framework - 方法/すべきこと - UI/BL レイヤーで EntityState を設定しますか?
次のようにレイヤーを分離しています。
UI - Web アプリ => BLL とエンティティの参照
BLL - ビジネス ロジック (検証) => 参照 DAL とエンティティ
エンティティ - データキャリー (POCO) => 参照なし
DAL - データ コンテキスト EDMX => 参照なし
これは完全な分離を使用した最初のプロジェクトであるため、非常に基本的な質問があります。オブジェクト @ UI レベルの EntityState (Added/Modified/Deleted) を設定したい場合、どうすればよいですか。上記の構造では、DataContextにアクセスできないためです。
エンティティの状態を設定することを知っている限り、データ コンテキストは必須です。
SOに関する多くの質問を読みましたが、この疑問を明確にするものはありませんでした。もう 1 つの方法は、カスタム State プロパティ @ Entities レベルを維持することです。
datacontext は DAL に制限する必要があることを読みました。EntityState を @BLL/UI に設定するのは悪い習慣ですか?
私はこの種のアーキテクチャで EF を初めて使用します。助けてください。
私は次のような質問をしましたが、明確になりませんでした。おそらく、SOC に関する知識が不足していることが原因である可能性があります。
1. DataContext を作成するレイヤーはどれですか?
2.サービス層で DbContext オブジェクトを参照してはいけないのはなぜですか?
3. Entity Framework / DbContext が DAL / リポジトリである場合、3 層アーキテクチャのどこに収まりますか?
4.Entity Frameworkとレイヤー分離
4. DbContext の外部で変更されたエンティティを更新する方法は?
編集 1: 私がまだ懸念していることの 1 つは、EntityState を設定するためだけに、DAL でオブジェクト階層を再度ループすることです。私はかなりネストされた階層を持っています。フラットな構造で同じことをしなければならない場合は、オブジェクトが埋められる UI で一度設定する必要があり、それから context.savechanges() を呼び出すことができます。
しかし、ここではエンティティのダミーの状態プロパティを作成しました。これを @UI に設定し、後でそれを EntityState.Modified @DAL に変換できます。これは正しいアプローチですか?
data-access-layer - DAL でのモデルの参照
あけましておめでとう皆さん。わかりました、私は 3 層アプリケーションを作成しようとしています。UI -> BLL -> DAL の順序で参照しています。質問は。私が抱えている問題は、Dbset にあります。DAL 内のモデルへの参照がないため、dbset は失敗します。
BLL で SomeModel クラスが見つからない場合、これを機能させるにはどうすればよいですか? どんな助けでも大歓迎です。
c# - BLL と DAL の両方で異なるモデル
そのため、WPF アプリケーションで適切な構造を維持する方法を学ぼうとしていますが、BLL と DAL を操作する最善の方法を見つけるのに苦労しています。
BLL には既にいくつかのモデルがあります。次に例を示します。
顧客、アカウントなど
また、作業を簡単にするために MVVMLight ツールキットも使用しているため、ほとんどすべてのモデルが「ObservableObject」から継承されます。
次に、DAL を作成し、Entity フレームワークを使用します。私のモデルはすべて ObservableObject を使用しているため、それらを DAL に移動してテーブルを作成することはできないと感じています (最初にコードを作成します)。
ここで最善の方法は、DAL でほぼ同一のオブジェクトを作成し、それらを取得するときにすべてのデータを BLL の古いモデルにマップすることでしょうか? 私はそれが少し2倍の作業であることを知っているので、それをよりきれいに保つ方法がわかりません(ObservableObjectからの継承を停止する以外に)
c# - asp.net c# を使用して有効なデータセットを返す
ドロップダウンから値を選択すると、エラーが発生し続けます。
**The SelectCommand property has not been initialized before calling 'Fill'.**
データセットが空として返されているようです。
3層構造にこだわりたい。
コードを使用して有効なデータセットを返すにはどうすればよいですか?
ダル
BLL
以下に冗長なコードがあるようです。以下の接続クラスを利用したいと思います。
接続クラス
PL
c# - リポジトリ パターン: DAL または BLL
車両の予約のデータを保存するためのいくつかのユース ケースでビジネス ロジック レイヤーを実装しようとしています。リポジトリ パターンをどこに実装する必要があるかについて、私は少し混乱しています。BLL または DAL で使用する必要がありますか? とても基本的なことのように聞こえますが、設計段階で迷ってしまいます。リポジトリ パターンが BLL に適していない場合、どれが適していますか。ヘルプ/ヒントをいただければ幸いです。
architecture - さまざまな種類の BLL クラス (DA VS BL へのアダプターのみ)
初めての多層 MVC アプリケーションを開発しています。カードゲームです。
次のように3つのレイヤーがあります
| | プレゼンテーション(MVC)| --> | BLL | --> | DAL (レポ/作業単位パターン)|
DAL はほとんど汎用的で、私の BLL はテーブルごとにほぼ 1 対 1 でマップします。
これで、カード ゲームのロジックのみを処理する「特別な」クラスができました (たとえば、ハンドが有効かどうかのチェック、誰かがまだ勝ったかどうかのチェックなど)。これらのクラスは、データベースと通信する必要はありません。追加クラス: カード、プレーヤー。
ロジックのみを含み、DAL と通信する必要がないこれらのクラスをどこに配置するのが最適でしょうか? 追加プロジェクト?たぶん、命名規則を調整しているだけですか?
どんな入力でも大歓迎です!
c# - ASP.NET で BLL クラスにアクセスできません
ASP.NETとC#で Web アプリケーションを作成しています。問題は、ページのコード ビハインドで BLL クラスのインスタンスを作成できないことです。
ログインページ ( LogIn.aspx ) とログインページ ( LogIn.aspx.cs ) を制御するページがあります。LogIn.aspx.csで次の操作を実行しようとするとUsersBLL _users = new UsersBLL()
、using ディレクティブまたはアセンブリ参照が見つからないというメッセージが表示されます。
UsersBLL.csクラス > プロパティ > ビルド アクションを右クリックし、コンテンツをコンパイルに変更することで修正できます。
この時点で、 LogIn.aspx.cs に UsersBLL.cs クラスのインスタンスを作成できますが、クラスは「壊れて」しまい、「DataSet 命令」を認識しません (画像を参照して理解してください...)
修正するにはどうすればよいですか?
ご回答ありがとうございます。
c# - BusinessLogic MVC の繰り返しコード
私は MVC ソリューションに取り組んでいます。私の DAL レイヤーは、リポジトリ クラスで解決できます。すべてがうまく機能しています。
しかし、私の BLL レイヤーには反復的なコードがあります。
私の Crud は同じですが、フィールドとコンストラクターは異なります。いくつかの追加のメソッドを持つこともできます。
これを適切な方法で解決する方法はありますか?
クラス1
クラス2