connection string in asp.net core library project

夙愿已清 提交于 2019-11-30 17:45:55

问题


I have asp.net core library project. I want to add connection string in it. I don't have startup class in this. Where I need to place connection string and how to fetch it?

Please suggest.


回答1:


In dotnet core you can manage configuration using json files, which is one in many ways to configure your application.

According to the dotnet core configuration documentation you can simply do (copied from link reference)

using Microsoft.Extensions.Configuration;
using System;
using System.IO;

// Add NuGet <package id="Microsoft.Extensions.Configuration" and
// <package id="Microsoft.Extensions.Configuration.Json"
// .NET Framework 4.x use the following path:
//.SetBasePath(Path.Combine(Directory.GetCurrentDirectory(), @"..\.."))

public class Program
{
    static public IConfigurationRoot Configuration { get; set; }
    public static void Main(string[] args = null)
    {
        var builder = new ConfigurationBuilder()
            .SetBasePath(Directory.GetCurrentDirectory())
            .AddJsonFile("appsettings.json");

        Configuration = builder.Build();

        Console.WriteLine($"option1 = {Configuration["option1"]}");
        Console.WriteLine($"option2 = {Configuration["option2"]}");
        Console.WriteLine(
            $"option1 = {Configuration["subsection:suboption1"]}");
    }
}

Then in your appsettings.json file you can add:

{
    "ConnectionStrings": {
        "BloggingDatabase": "Server=(localdb)\\mssqllocaldb;Database=EFGetStarted.ConsoleApp.NewDb;Trusted_Connection=True;"
    },
}

And access it in code using Configuration.GetConnectionString("BloggingDatabase")

I can recommend also reading the dotnet core documentation regarding connection strings

EDIT: As the commentors mention on your post, don't add connection strings and config files to your library code - do this from your console application or the web application!

Additional forms of configuration for dotnet core includes user secrets, environment variables and perhaps XML files or other forms of storage, as pointed out in the comments



来源:https://stackoverflow.com/questions/42002876/connection-string-in-asp-net-core-library-project

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!