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

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

asp.net - bll から mysql への ASP.NET 挿入

3 層ソリューション (またはそれが呼ばれるもの) を使用して、MySql データベースに挿入しようとしています。

私はこれを MS-sql データベースで何度も実行しましたが、非常にうまく機能しました。

しかし、挿入しようとすると、IDをnullにすることはできません。データベースがそれを処理すると思いました。コードに挿入を直接記述し、MySqlCommand と executeNonQuery を使用すると、うまく機能します。

MySql で BLL と DAL を使用することはできませんか?

エラーメッセージ:

System.Data.NoNullAllowedException: 列 'GiftID' は null を許可しません。System.Data.DataColumn.CheckNullable (DataRow 行) で System.Data.DataColumn.CheckColumnConstraint (DataRow 行、DataRowAction アクション) で System.DataTable.RaiseRowChanging (DataRowChangeEventArgs args、DataRow eRow、DataRowAction eAction、Boolean fireEvent) システムで.Data.DataTable.SetNewRecordWorker(DataRow 行、Int32 提案レコード、DataRowAction アクション、ブール値 isInMerge、Int32 位置、ブール値 fireEvent、Exception& deferredException) で System.Data.DataTable.InsertRow(DataRow 行、Int32 提案 ID、Int32 位置、ブール値 fireEvent) c:\Users\IT\AppData\Local\Temp\Temporary ASP.NET Files\payex\45bd406a\10c84208\App_Code.cyqhjqo7 の PayEx.payexusersDataTable.AddpayexusersRow(payexusersRow 行) の System.Data.DataRowCollection.Add(DataRow 行) .1.cs:

私のコード:

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

c# - BLLエラーのベストプラクティス

BLLでビジネスルールのエラーを返すためのベストプラクティスは何ですか?例外を発生させてプレゼンテーション層でキャッチする必要がありますか?例外タイプ情報を保持するある種のオブジェクトを返す必要がありますか?

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

vb.net - GUIからビジネスオブジェクトへのマッピングVB.Net

私が現在抱えている問題は、複数のGUIフィールドをオブジェクトプロパティにマッピングすることです(つまり、プレゼンテーション層からビジネスロジック層へのマッピング)。具体的には、これはVB.Net2.0WinFormsにあります。

ソリューションの性質上、GUIで同じタイプの動作を示す4つの列が必要です。各列は11のテキストボックスで構成されます(問題は11のテキストボックスを超えるため、この小さなサンプルサイズを使用します)。

私が現在行っているのは、4つの列すべての各テキストボックスのタグを次のような値に設定することです。

テキストボックス(キー押下など)によってイベントが発生すると、親コンテナが表示されます。このコンテナのタグは、特定のオブジェクトをマッピングする文字列としても設定されています。これをテキストボックスのタグと組み合わせて使用​​して、設定する必要のあるオブジェクトのプロパティを決定します。全体として、次のようになります。

ご覧のとおり、これは非常に早く悪化する可能性があります。現在、マップできるいくつかの奇妙なプロパティを設定しています-したがって、selectステートメントは非常に長いです-それらの多くは、DRYを試行するために複数のメソッドに埋め込まれています(私はコードを本質的に概念的なものに骨抜きにしました実装)。

質問は:どうすればこれをリファクタリングできますか?辞書/ハッシュをある程度使用しようとしましたが、複雑になりすぎたか、問題がさらに複雑になったため、実装が意味をなさなかっただけです。

助けてくれてありがとう。

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

asp.net - AspNetMembershipProvider にある DotNetNuke UserLogin 関数と対話するのは何ですか?

AspNetMembershipProvider セクションの UserLogin 関数と対話するログイン機能がどこにあるかを把握しようとしていますが、ログイン機能が存在する場所への参照はありません。これがデータをそのままにする機能であることはわかっています。ログインをカスタマイズできるように、ソースコードのどこにログインがあるかを見つける必要があるだけです(たとえば、ユーザーロールに基づいてログイン時にリダイレクトする、パーソナライズされたメッセージなど)

何か案は?

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

.net - LINQ-to-SQLをBLLクラスにどのようにマッピングしますか?

アプリでDALを作成するためにLINQ-to-SQLを使用することを検討しています。私はORM(抽象化IMOが多すぎる)の大ファンではないため、通常は手動でDALを作成しますが、せっかちなクライアントのために時間を節約しようとしています。

私の質問は、LINQ-to-SQLによって生成されたクラスをBLLクラスにどのようにマッピングするかということです。LINQ-to-SQLによって生成されたクラス(部分的なクラス)にコードを追加するだけで、BLLクラスをまったく作成しませんか(クラスはDALクラスとBLLクラスの両方として機能します)、または通常はどのように行いますかそれ?

ありがとう

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

vb.net - AutoMapper を使用して DAL プロパティを BLL プロパティにマップする際の問題

Country テーブル (CountryCode、CountryName など) のフィールドのプロパティを含む BLL クラスがあります。また、同じ名前のフィールドを持つ DAL クラス (SubSonic 2.2 で作成) への参照であるプロパティ ioDAL もあります。

データベース (SQL Server 2005 FWIW) を呼び出して DAL プロパティを設定する DAL の FetchById() メソッドを呼び出す LoadRecord() メソッドがあります。

次に、対応する DAL から各 BLL プロパティを設定するコードを記述するのではなく、AutoMapper (CodePlex から) を使用します。行は次のようなものにする必要があると思います

しかし、これにより、「型の値 (DAL クラス/名前空間の命名) を 'System.Type' に変換できません」および「型の値 (BLL クラス/名前空間の命名) を 'System.Type' に変換できません」というエラーが発生します。

この呼び出しがどうあるべきかについて、誰かが私にガイドを教えてもらえますか? (VB.NET VS2005)


2010 年 1 月 13 日編集 - Jimmy から、さらにコードを表示するように依頼されました。

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

vb.net - 3層(単一層)アプリケーションでBLLとUIの間でデータを渡す方法は?

私は、n 層アーキテクチャ (DAL、BLL、UI) の基礎を学ぼうとしている、かなりの新人プログラマーです。私がプログラミングしているアプリケーションは、VB.NET (.Net 3.5) で記述された単一層の 3 層アプリケーションです。レイヤーは次のとおりです。

ダル

BLL

UI

COMMON - 現在、DTO が含まれています。

BLL と UI の間で何を渡すかを判断するのに苦労しています。私の本能は、BLL からの完全なビジネス オブジェクトではなく、データのみを UI に渡す必要があることを教えてくれます。次の 2 つのシナリオを検討してください。

1) BO を BLL から UI に直接渡します。これにより、BO メソッドが公開され、UI が BO に直接アクセスできるようになりますが、これは良くないようです。

2) 関連するデータのみを BO から UI に渡します。たとえば、顧客には名前と住所があります。このデータは実際に UI で表示/編集したいものであるため、完全な BO ではなく、そのデータのみを UI に返します。次に、UI は BLL を呼び出して、特定の BO を更新します。

#2を使用する傾向がありますが、それを実装する最良の方法がわかりません. 私が現在プログラムしている方法では、BLL からのみデータを返すと、BO へのすべての参照が失われ、GC がそれらを要求します。これに基づいて、私はいくつかの質問があります:

1) BLL の呼び出し間でビジネス オブジェクトを維持する必要がありますか? 別の方法は、BLL を介してデータを渡すたびにそれらを再作成することですが、これは間違っているようです。

2) 単層アーキテクチャで BO を存続させる最善の方法は何ですか (UI に渡さない場合に参照を保持する方法は?)

3) n 層アプリケーションはどのようにこれを行いますか? BLL で BO を有効に保ち、UI からの更新を待ちますか? BO が不要になったときに確実にリリースされるようにするには、BLL で多くの "簿記" が必要ではないでしょうか?

洞察に感謝します。愚かなことを尋ねている場合はご容赦ください。私は知っている小さなプログラミングを独学したので、愚かな質問をしていて、それを知らないかもしれません.

0 投票する
5 に答える
2071 参照

linq - Linq to SQL & 論理パーティショニング (DAL、BLL)

.Net でサイトの 1 つを再構築する予定です。私は多くの記事を読みましたが、プロジェクトをデータ アクセス レイヤー (DAL)、ビジネス ロジック レイヤー (BLL)、およびプレゼンテーション レイヤーに分離するというアイデアが本当に気に入っています (私たちは従来の ASP から来ているので、これは私たちにとって大きなステップです) )。また、Linq to SQL もとても気に入っています。

Linq to SQL は迅速な開発を目的としているため、Linq to SQL で DAL、BLL、およびプレゼンテーション層を持つことは本当に可能ですか? Linq to SQL を使用すると、DAL は BLL で変更される可能性のあるエンティティまたは linq コードを返しますか? Linq to SQL を使用した DAL と BLL の関係は、コンセンサスのないあいまいなトピックのようです。これは私たちにとって非常に大きなジャンプであるため、何かに飛び込む前に、確実に優れたゲーム プランを用意したいと考えています。

型指定されたデータセットは、これにより適しているように見えますが、Linq で同様のものを取得できる場合は、そのルートに進みます。

nHibernate やその他のサードパーティ ライブラリには近づきません。

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

vb.net - BLL からユーザー (UI) に通知し、応答を取得する方法は?

VB 2008 .NET 3.5 の使用

私は N 層デスクトップ アプリケーションに取り組んでいます。

BLL のメソッドが、ユーザーに通知する必要があり、メソッドが続行する前にユーザー入力 (OK、キャンセルなど) を待機する必要がある状況に遭遇したとします。通常、これをどのように処理しますか?

この状況はかなり頻繁に発生しますが、常に発生するわけではなく、予期されていると想定してください。例外をスローするのは正しくないようです。私がこれまでに持っている唯一の解決策は、カスタム EventArgs でイベントを発生させ、UI がカスタム EventArgs でいくつかのプロパティを設定してユーザー入力を反映できるようにすることです。

他の提案はありますか、または上記の手法は一般的に使用されていますか?

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

dns - DAL は、リレーショナル モデルとドメイン モデルの間の変換層である必要がありますか?

答えがあると思う単純な質問ですが、共鳴板を探しています。DAL は、データベースから取得したもの (直接の SQL、ストアド プロシージャ、ORM など) を、ビジネス層が理解するドメイン エンティティに変換するものである必要がありますか? 別のメモとして、すべてのドメイン エンティティをインターフェイスで定義する必要があります (依存関係を最小限に抑えるため)。