Đầu tiên: Sử dụng program.cs mặc định nó đã bổ sung thêm cấu hình cho bạn:
public class Program
{
public static void Main(string[] args)
{
BuildWebHost(args).Run();
}
public static IWebHost BuildWebHost(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.Build();
}
Thứ hai tạo ra một giao diện cho lớp học của bạn và vượt qua cấu hình với dependency injection bằng cách tạo Iconfiguration
lĩnh vực:
private readonly IConfiguration Configuration;
sau đó vượt qua nó bằng cách contructor:
public Test(IConfiguration configuration)
{
Configuration = configuration;
}
Tạo một giao diện cho lớp học của bạn để sử dụng Dependency Injection
nên bạn có thể tạo các trường hợp của nó mà không cần phải vượt qua IConfiguration
tới số
Đây là lớp và Giao diện:
using Microsoft.Extensions.Configuration;
namespace GetUserIdAsyncNullExample
{
public interface ITest
{
void Method();
}
public class Test : ITest
{
public Test(IConfiguration configuration)
{
Configuration = configuration;
}
private readonly IConfiguration Configuration;
public void Method()
{
string here = Configuration["placeto:login"];
}
}
}
Sau đó, trong startup.cs của bạn thực hiện Dependency Injection
cho lớp học của bạn bằng cách gọi:
services.AddSingleton< ITest, Test>();
trong phương pháp ConfigureServices
bạn
bây giờ bạn có thể vượt qua trường lớp học của bạn cho bất kỳ lớp để sử dụng bằng cách Dependency Injection
quá
ví dụ: nếu bạn có ExampleController
mà bạn muốn sử dụng lớp học của mình, hãy thực hiện theo các bước sau:
private readonly ITest _test;
public ExampleController(
ITest test
)
{
_test = test;
}
Và bây giờ bạn có thể hiện _test để truy cập nó ở bất cứ đâu trong bộ điều khiển của bạn.
Nguồn
2018-02-11 06:29:47
Bản sao có thể có của https://stackoverflow.com/questions/46632090/mvc-core-2-0-how-to-use-an-appsettings-json-file-via-configuration/46632521#46632521 – anserk
Tài liệu này từ MS giải thích nó làm thế nào để => https://docs.microsoft.com/en-us/aspnet/core/fundamentals/configuration?tabs=basicconfiguration – CodeNotFound
nhưng tôi cần đọc trong lớp tùy chỉnh, ví dụ là trong bộ điều khiển và tôi thiên đường đã thử một số tùy chọn. trong tiêu chuẩn .Net được sử dụng 'string userName = System.Configuration.ConfigurationManager.AppSettings [" PFUserName "];' để đọc web.config, trong .Net core tương đương @CodeNotFound –