【发布时间】:2023-03-15 02:35:01
【问题描述】:
我有一个项目类(Nuget 包)。我需要在没有构造函数的静态类中读取我到 MongoDB 的连接字符串。
静态类方法:
/// <summary>
/// The default key MongoRepository will look for in the appsettings.json
/// </summary>
private const string DefaultConnectionstringName = "Data:MongoDB:MongoServerSettings";
/// <summary>
/// Retrieves the default connectionstring from appsettings.json
/// </summary>
/// <returns>Returns the default connectionstring from the App.config or Web.config file.</returns>
public static string GetDefaultConnectionString()
{
var config = new Configuration();
return config.Get<string>(DefaultConnectionstringName);
}
我总是null...如何在不使用DI的情况下获取Startup.cs之外的值?
有可能吗?
在我的旧代码中,我可以这样做:
/// <summary>
/// Retrieves the default connectionstring from the App.config or Web.config file.
/// </summary>
/// <returns>Returns the default connectionstring from the App.config or Web.config file.</returns>
public static string GetDefaultConnectionString()
{
return ConfigurationManager.ConnectionStrings[DefaultConnectionstringName].ConnectionString;
}
谢谢!!
【问题讨论】:
-
var config = new Configuration();你使用 RC1 吗?在 RC1 必须使用 ConfigurationBuilder:var config = new ConfigurationBuilder(). -
是的@StasBoyarincev 我正在使用 RC1,你能告诉我使用 ConfigurationBuilder 的最佳方法是什么吗?谢谢!
标签: c# asp.net-core