2009-06-30 10 views
1

サイト上に複数のエンティティを連結したリストページがあるとします(検索ページなど)。あなたは...アクションであなたのサイトのすべてのエンティティを照合し、一般的なビューモデルタイプにそれらのすべてをマップMVCパターンの実践(asp.net mvc) - ビューの代わりにアクションでURLを生成する

擬似:

from articles, posts, projects 
orderby rating 
select top 50 as 'SearchResult' 

マイ検索結果クラスは次のようになります。

SearchResult { Title, Snippet, Rating } 

このシナリオでは、ビューにはそれぞれの結果のコンテキストがありません。結果が分類されると、詳細を取得するためのURLをどのように生成できますか?これがうまくいく

SearchResult { Title, Snippet, Rating, ResultType } 
where ResultType is { Article, Post, Project } enum 

、それはコントローラのアクションに列挙型の関係を発見するためのビューを必要とするでしょう。..

しかしこれは、保守のためにそれぞれの新しいエンティティ型または静的コンテンツのセクションを問題を引き起こすだろうその新しいカテゴリからコントローラアクションへのマッピングが必要になります。これには、アクションにどのデータを渡すのかという問題があります。渡すデータがない場合はどうなりますか?

は、コントローラ/アクションのそれはOKです...それは各エンティティのコンテキスト、およびアクション/データマッピングを持って行動、の「詳細」のURLを生成することであろう最高のシナリオのように思えます彼らは無関係な存在ではないはずですか?

ありがとうございます。

答えて

3

私はコントローラからビューへのURLの受け渡しはOKだと思います。例として、Web検索エンジン(新しいGoogleの競合他社:)を開発した場合、特定のタイトル、スニペット、評価を持つ文書がどこにあるかを判断するビューは他にありません。

+0

+完全一致 –

関連する問題