キャッスル ウィンザー ファクトリを使用して、リクエスト URL に基づいてオブジェクトをインスタンス化しています。
何かのようなもの:
public FooViewModel Get()
{
if (HttpContext.Current == null)
{
return new FooViewModel();
}
var currentContext = new HttpContextWrapper(HttpContext.Current);
// resolve actual view model.
場合によっては、実際に 404 をスローしてリクエストを停止したい場合があります。現在は次のようになっています。
throw new HttpException(404, "HTTP/1.1 404 Not Found");
currentContext.Response.End();
ただし、リクエストは終了せず、アクションにヒットし、ビューを解決しようとしますか?
私のコントローラーは次のようになります。
public class HomeController : Controller
{
public FooViewModel Foo { get; set; }
public ActionResult Index()
{
ViewBag.Message = "Modify this template to jump-start your ASP.NET MVC application.";
return View();
}
私はこれについてすべて間違って考えていますか?または、これを達成する方法はありますか?
私が考えていた代替手段は、Foo プロパティの状態をチェックするアクションの属性ですか?