2

Rails のチュートリアルを見ていて、定義するだけでクラスの編集システムを簡単に作成できることに非常に感銘を受けました。

これは ASP.NET で実行できますか?

ORM が存在することは知っていますが、編集システムは付属していますか?

編集システムの意味を説明するために、人を定義するクラスを考えてみましょう

class Person
{
  string First_Name;
  string Last_Name
}

そして、おそらく次のような大胆なストロークで何か:

CreateEditAbleClass(Person)

ブラウザで以下の機能を取得します。

http://www.yart.com.au/images/orm_editor.jpg

そして、この機能はすべての UML 定義 (継承、関連付け、集約など) に拡張されます。さらに、カスタマイズ可能な検証などを追加する簡単な方法があります。

私は現在、これらの結果を達成するために DataGrid と多くの手動コーディングを使用しています。

4

5 に答える 5

1

単純なサイト/目的には使用できますが、より複雑なことをしたい場合はすぐに機能しなくなります。特定のフィールドを表示したくない場合にどうなるか、特定のクラスのサブセットと関係がある場合にどうなるかなど.

私が推測する前に、この道をたどっていたので、次のことを認識して問題に到達しました。

  1. 同様のエンティティに対して同様のフォーム/リストなどを作成するのに多くの時間を費やしています。
  2. この時間を最小限に抑えたいと考えており、フォームを自動生成できるかどうかを検討しています。

基本的に、それを自動的に実行したい場合は、必要なことの半分を実行し、実際には実装に時間がかかる複雑すぎるシステムを作成することになります。

ただし、反復的な GUI コードの作成と維持にかかる時間を大幅に削減したい場合は、宣言型のフォーム ビルダーとテーブル ビルダー (ROR のフォーム ビルダーなど) を使用することをお勧めします。

これにより、フォームやテーブルを必要以上に繰り返すことなくすばやく作成でき、複雑なシナリオに必要な柔軟性も得られます。

于 2008-10-19T01:14:30.633 に答える
1

これを「足場」といいます。

それは、データ層または ORM に何を使用しているかによって大きく異なります。たとえば、 Entityspacesには足場ジェネレーターが付属しています。

于 2008-10-19T00:40:31.030 に答える
1

絶対!Ruby のスキャフォールディングは、ASP.NETの動的データとして知られています。Scott Hanselman はここで Dynamic Dataについて話します。

Scott Hunter のスクリーン キャストがここに表示されます。これはかなり新しいものであることに注意してください (まだベータ版です)。

于 2008-10-19T01:06:27.203 に答える
1

もちろん。これは私の頭の中ではありませんが、クラスを ObjectDataSource コンポーネントに接続し、それがDetailsViewコントロールに接続できると思います。したがって、これは非常に手間のかかる作業ですが、必要なアイテムをその場で作成し、それらをバインドするメソッドを用意するのは非常に簡単です。

于 2008-10-19T00:04:51.400 に答える
1

あなたは反射でそれを行うことができます。リフレクションを使用すると、クラスのメンバーを列挙できるため、メンバーを編集するフォームを作成できます。

クラスのメンバーに基づいて Web フォームをレンダリングするためのコードを作成するのはもう少しコードが多いので、ここに入力しますが、リフレクションを調べると、いくつかの方法で独自のソリューションを思いつくことができるはずです時間。

于 2008-10-19T00:04:51.523 に答える