0

私が構築しているソフトウェアで次の側面を実現したいと考えています: 1. カスタマイズ可能なエンティティ モデル 2. カスタマイズ可能な UI 3. カスタマイズ可能なワークフロー

これを達成するためのアプローチについて考えました。これを確認して提案してください。

  1. エンティティ オブジェクトはプレーン オブジェクトである必要があり、データのみを保持します
  2. フレームワーク (NHibernate など) を使用して、エンティティ モデルと DB スキーマを分離します。これにより、エンティティ オブジェクトを簡単に変更できます。
  3. エンティティを取得/変更するビジネス ロジックは、ワークフローの一部として呼び出せるように、十分に細かくする必要があります。
  4. ビジネス オブジェクトは状態を保持してはならないため、静的メソッドのみが含まれます。
  5. ワークフローは、エンティティの「状態」に応じて、ビジネス オブジェクトのどのメソッドを呼び出すかを決定します。
  6. ワークフローは、処理の結果を取得してから、ビジネス オブジェクトを適切な UI 画面に渡す必要があります。
  7. UI 画面には、特定のエンティティを表示する方法に関する指示が含まれている必要があります。おそらく、一連の UI 命令に基づいて UI を動的に生成する必要があります。(XULのように)

    • このアプローチについてどう思いますか?
    • これらのフレームワークのコーディングに時間を費やさないように、どの既存のフレームワーク (NHiberante、Window Workflow など) がこのモデルに適合するかを提案します。
    • また、一連のUI命令(Mozilla XULなど)に基づいて動的なasp.net ajaxページを生成できるasp.netフレームワークがあることを示唆していますか?

私は最近 Apache Ofbiz を調べていて、アプリケーションのほとんどの領域 (UI、ワークフロー、エンティティ) をカスタマイズできることに感銘を受けました。C#/.Net で開発され、同様のレベルのカスタマイズを提供する同様の (必ずしも ERP システムではない) アプリケーションはありますか? UI、ワークフロー、およびエンティティ モデルに関して高度にカスタマイズ可能な C# で開発されたアプリケーションの例を探しています。

4

2 に答える 2

3

以前にワークフローを使用して動的に生成された大規模なフォームを作成したことがありますが、すべてが社内コードで行われていました。

テーブルからエンティティ フィールドへのマッピングを指定する必要があるため、ORM は動的フォームには役立ちません。あなたの場合、それらは動的であるため、意味がありません。

データを保存する方法を確認するには、次の 2 つの方法があります。

1) EAV (Entity Attribute Value) テーブル - 動的フィールドですが、レポートには苦労し、あまり効率的ではありませんが、唯一の方法である場合もあります

2) ユーザーがフォームをデザインする際に、その場で DB テーブルを生成する

GUIについては、これをチェックしてください。まだ使用していません。これは、「足場」を生成する Ruby on Rails タイプの環境に対する Microsoft の回答です。データベース テーブルに基づく GUI 画面。

ASP.NET 動的データ

http://msdn.microsoft.com/en-us/library/cc488546.aspx

別のプロジェクトであなたが探しているものを見たことがありません。

XForm エンジンを調べることはできますが、ちょっと未熟なようです。

于 2008-12-30T06:41:51.453 に答える
0

要件を明確にしていただけますか。

アプリケーションのユーザーは、何らかのフォームを作成し、そのワークフローを定義するつもりですか? 個別の各エンティティには、含まれているプロパティの基本セットがありますか?

"Page.Parse" を使用して、asp.net コードを動的に作成できます。XSLT などの任意の方法を使用して asp.net コードを作成し、ページに解析します。例: http://www.codeproject.com/KB/XML/xmlxsltransformer.aspx

于 2008-12-29T07:43:05.997 に答える