3

クラス ライブラリの ControllerContext にアクセスしたいと考えています。出来ますか?

4

3 に答える 3

3

可能ですか?

いいえ、これは私がお勧めするものではありません。クラス ライブラリを、コントローラー コンテキストなどの ASP.NET 固有のものに結び付けないでください。このライブラリが必要とする情報を引数として渡します。

クラス ライブラリから ControllerContext を取得する以外に、目的を達成する方法は他にもあります。

于 2012-06-25T07:36:16.777 に答える
3

そこからどのような情報を取得したいかによって異なります。他の場所でも利用できる場合があります。たとえば、コントローラ名とアクションは次から取得できます。

HttpContext.Current.Request.RequestContext.RouteData.Values["controller"]
HttpContext.Current.Request.RequestContext.RouteData.Values["action"]
于 2014-10-08T08:15:24.427 に答える
1

はい、可能です。クラス ライブラリで System.Web.Mvc アセンブリを参照し、呼び出すメソッドに ControllerContext オブジェクトを渡す必要があります。

それが推奨されるかどうかの問題は、あなたが何をしているかによって異なります。一般に、モデルを扱う別のアセンブリに MVC ベース オブジェクトを渡すことはお勧めしません。

于 2012-06-25T17:30:38.857 に答える