私は、CMSを含むアプリケーションの開発を検討しています。私は熟練したWebフォーム開発者ですが、実際はMVCに移行しています。ASP.NET MVC - CMSの質問
私は君たちのいくつかに答えることを願っての質問のカップルがあります:
まず、私の現在のWebフォームをCMSは、ユーザーがページを作成することを可能にし、その上にユーザーコントロールの任意の数を「ドロップ」を彼らが作成したページ。私がこれを行う方法は、パスと一緒にDBにエントリを作成し、LoadControlメソッドを使用することです。
部分的なビューでこれを行うことができますが、部分的なビューにはコードがありません。人々がページにドロップする可能性のあるコントロールが100個ある可能性がある場合、ビュー内でViewBagを使用する場合、コントローラ内のViewBagは100個すべてのコントロールを処理する必要がありますか?たとえば、Webフォームユーザーコントロールにはロジックが含まれます:rptItems.DataSource = blah; rptItems.DataBind()
MVCでは、ロジックはビューコントローラにあり、ビューはViewBagによってアクセスされると仮定していますか?私は少しこれを行う方法で混乱しています。
第2に、ディープルーティングをどのように扱いますか?
EG:
ストア/製品/カテゴリーは結構ですが、何店舗/製品/カテゴリー/デリバリー/ UKの?私が必要とするルートごとにglobal.asaxでルートを設定する必要はありますか? Webフォームでは、ReWritePathメソッドを呼び出して、正規表現を使用してルーティングを自分で処理しました。これを読んで、そしてうまくいけば、あなたの2番目の質問、(すなわち、「深いルーティング」)のために、私の質問のいくつか
ありがとうDavid。ルーティングの質問は、クライアントが好きなだけ多くのネストされたURLを作成できるようにするソリューションを見つけることでした。だから理論的にはDir1/Dir2/Dir3/Dir4 ....などがあります。ウェブフォームで。 Page.aspxファイルに各リクエストを送り、データベースのURLに基づいてパスを書き直します。 – Paul