ServiceStack での Razor サポートに関するドキュメントを保持する ServiceStack のRazor Rockstars Web サイトには、別のテンプレートを選択するためのいくつかのオプションがリストされています。
規則 (リクエストまたはレスポンスの DTO 名など) に従っていない場合は、次のHttpResult
ような装飾を返すことで、どのビューまたはレイアウト テンプレートを使用するかを動的に指定できます。
return new HttpResult(dto) {
View = {viewName},
Template = {layoutName},
};
静的ビューを使用している (つまり、サービスは常に同じビューを使用している) 場合は、[DefaultView]
属性で装飾することにより、使用するビューを指定できます。
[DefaultView("Rockstars")]
public object Get(Rockstars request) {
...
return responseDto;
}
どちらの場合でも、強い型付けが必要な場合は、 のようなものを使用できますtypeof(RequestDto).Name
。
ビュー名は一意である必要があります
MVC とは異なり、階層は ServiceStack でのビューの選択に影響しません。また、各ビュー ページ(つまり、フォルダー内のカミソリ ページ/Views
) は一意である必要があるため、希望するフラットまたはネストされたフォルダー構造に自由に配置できます。