2012-01-11 12 views
0

私はasp.netの初心者で、典型的なマスターディテールビューのウェブサイトの設計について考えています。既存のレコードを編集し、新しいレコードを追加し、詳細を表示するために、すべてのレコードと詳細ビューを表示しているGridView-Controlがあります。asp.net状況を表示/編集/挿入するためのパターン

このような状況を処理できるasp.netには、GridViewとDetailsViewまたはFormViewの組み合わせがいくつかあります。しかし、これらのアプローチはすべて、Rapidアプリケーション開発のために設計されているようです。自分のDALなどを使用したいので、たとえばInsert/Update文を完全に制御する必要があります。

これに対処するための典型的なasp.netアプローチは何ですか? 状態(表示/編集/ ...モード)を独自に保存する詳細ビューのUserControlを作成する必要がありますか?さらに、ビューは状態によってわずかに異なります(たとえば、挿入ビューには編集ビューよりも1つ多くの入力コントロールがあります)。上記のDetailsViewとFormViewはこれを処理できないようですので、コードのように貼り付けるコピーがたくさんあります。&

これはかなり一般的な状況だと思います。あなたはそのような状況で何を好きですか?

+0

[Dynamic Data Website](http://msdn.microsoft.com/en-us/library/cc488469.aspx) –

答えて

0

あなたがそうのような直接的たDetailsViewまたはFormViewコントロールにカスタムDALから手動でデータをバインドすることができます:メソッドときにそれを呼び出すワイヤーあなたのDALのオブジェクトまでとのObjectDataSourceを、

this.dvw.DataSource = new[] { DAL.GetObject(1) }; 
this.dvw.DataBind(); 

をそれとも、も使用することができますそれが必要です。

カスタムユーザーコントロールを使用してデータを手動で読み込むこともできます。これは、自分のアプリケーションで行ったアプローチです。

実際には、アーキテクチャー、達成したいこと、オブジェクトモデルの複雑さ、その他さまざまな要因によって異なります。

0

マスターパートでは、手作業でインターフェイスを構築します。つまり、テキストボックスやラベルなどを作成します。 詳細部分については、編集可能なGridViewを使用します。これは面倒な作業です。

もちろん、スキャフォールディングを使用して、データベースモデルからUI用のASP.Netコードを生成することができます。 これを確認できます:http://codepaste.net/b1geac

関連する問題