asp.net核心库项目中的连接字符串

Asi*_*eed 4 asp.net-core asp.net-core-1.0

我有asp.net核心库项目.我想在其中添加连接字符串.我没有启动类.我需要在哪里放置连接字符串以及如何获取它?

请建议.

nov*_*ver 7

在dotnet核心中,您可以使用json文件管理配置,这是配置应用程序的众多方法之一.

根据dotnet核心配置文档,你可以简单地做(从链接参考复制)

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"]}");
    }
}
Run Code Online (Sandbox Code Playgroud)

然后在您的appsettings.json文件中添加:

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

并使用代码访问它 Configuration.GetConnectionString("BloggingDatabase")

我还建议您阅读有关连接字符串dotnet核心文档

编辑:正如评论员在您的帖子中提到的,不要将连接字符串和配置文件添加到库代码中 - 从控制台应用程序或Web应用程序执行此操作!

dotnet核心的其他配置形式包括用户机密,环境变量以及可能的XML文件或其他形式的存储,如评论中所指出的