ASP.NET Core 1.0プロジェクトでは、DIを使用してどのようにコンストラクタにパラメータを渡すことができます。たとえば、以下のサービスをStartup.csに登録するにはどうすればいいですか? StateService()はBlogingContext型の入力パラメータを必要とするため、services.AddTransient(typeof(IStateService), new StateService());
は機能しません。または、関連するデータベースを使用して次のサービスを構築する別の方法がありますか?ここでState
はSQL Server Dbからのテーブルです。アプリはCode FirstアプローチでEntityFrameworkCore
を使用しています。私は最新のリリースのASP.NET Core 1.0とVS2015-Update 3を2016年6月27日にリリースしました。ASP.NETコア依存性注入、パラメータを挿入
私はsimilar example hereですが、全く同じタイプの入力パラメータではありません。
サービスは:ドキュメントの状態として
public interface IStateService
{
IEnumerable<State> List();
}
public class StateService : IStateService
{
private BloggingContext _context;
public StateService(BloggingContext context)
{
_context = context;
}
public IEnumerable<State> List()
{
return _context.States.ToList();
}
}
起動時に 'services.AddDbContext();'のようなもので 'BloggingContext'を登録しようとしましたか? https://docs.asp.net/en/latest/fundamentals/dependency-injection.html#registering-your-own-services –
mollwe
@mollwe助けていただきありがとうございます。あなたのコードは私のカスタムサービス、すなわち 'StateService'を登録しません – nam
状態サービスを' service.AddTransient(); 'として登録すると、それは機能しますか? –
mollwe