2

私はデータアクセスレイヤがあるn層アプリケーションで作業しています。他のアプリケーションとは独立しています。 .NET Core 1.1用のクラスライブラリを作成しましたが、依存関係フォルダは表示されますが、設定/ JSONファイルは表示されません。私は知っている、私はクラスライブラリプロジェクトでAppSetting.JSONファイルを追加できますか?接続文字列を追加するにはどうすればいいですか?私はConfigureBuilderをDbContextクラス - > SQLServerConnectionでオーバーライドすることに気付いていますが、別の設定ファイルに保存してこれらの接続文字列を参照したいと思います。また、注意すべき設定ファイルをクラスライブラリに追加する方法、続いて.NET Core 1.1の接続文字列を追加する

は、Googleで検索しながら、このクラスライブラリは直接ASP.NETアプリケーションに

をリンクしません、私はリンクhttps://www.stevejgordon.co.uk/project-json-replaced-by-csproj次を発見したが、私の疑問は残る、どこで、どのように私はクラスライブラリの接続文字列を追加しますプロジェクト?

+0

からCONN文字列を読んでいました、ここでの 'ASP.NETアプリケーションdirectly'にリンクしません。このクラスライブラリは、それはどのように動作しますか?何かがライブラリをホストしている必要があります – Jamiec

+0

私はWeb APIを使用するつもりですが、データベースへのアクセス、dbContextとリポジトリに依存しないようにしています。 – toxic

+0

「ASP.NETアプリケーション」です。 – Jamiec

答えて

4

これは間違ったやり方です。あなたのDALアセンブリ用の設定ファイルを持っていたくない場合は、DALが設定について何も知りたくないだけです!

通常、あなたがDALのために設定し、すべてがたっ文字列であり、これは簡単にこのコンストラクタに渡すことができます。

public class MyRepository : IMyRepository 
{ 
    public MyRepository(string connectionString){ ... } 
} 

WEBAPIのチャンスはあなたができるでしょうしているようにあなたが何かでこのDALを使用する場合依存性注入を使用して - 、それはあなたがウェブAPIの設定

public void ConfigureServices(IServiceCollection services) 
{ 
    var connectionString = Configuration.GetConnectionString("MyConnectionString"); 
    services.AddScoped<IMyRepository>(sp => new MyRepository(connectionString)); 
} 
+0

本当に役立つだろう多くの感謝 – toxic

関連する問題