IDependencyResolverを使用して、コントローラにいくつかの依存関係を注入しようとしています。これは私のコントローラです。IDependencyResolver null例外
public class MyController: ApiController
{
private IMyService m_myService;
public MyController()
{
}
public MyController(IMyService myService)
{
m_myService = myService;
}
//Other code....
}
私は内のすべての私のアプリの依存関係を持つカスタムサービス・プロバイダを使用していますし、私に提供し、それは必須使用されました。ここでは、使用しているserviceProviderを使用してIDependencyResolverを実装します。
WebApiを起動してNull例外が発生し、クラッシュすると問題が発生します。
Startup.cs
public class Startup
{
//This property is being instantiated before calling configuration function
public static ServiceProvider ServiceProvider { get; set; }
public void Configuration(IAppBuilder application)
{
application.UseCors(CorsOptions.AllowAll);
HttpConfiguration configuration = new HttpConfiguration();
configuration.DependencyResolver = new ServiceProviderResolver(ServiceProvider);
// Attribute routing.
configuration.MapHttpAttributeRoutes();
application.UseWebApi(configuration);
configuration.EnsureInitialized();
}
}
EDIT: 私はスタートアップクラスの内部UseWebApiメソッドを呼び出します。コードは、私のdependencyResolverのGetServiceメソッドを呼び出しており、パラメータによって渡されたTypeはIHostBufferPolicySelectorです。
ご協力いただければ幸いです。ありがとうございました!
ここであなたはServiceProviderを割り当てていますか?また、例外の詳細を掲載してください(スタックトレースが含まれています)。 –
こんにちは@FedericoDipuma私はちょうど3分前のようにそれを解決しました。ご関心をお寄せいただきありがとうございます! – acostela