我期待使用在Program.cs
中實例化的變量Config
,以便能夠在我擁有的其他類中使用。據我瞭解,我們需要使用依賴注入,但不知道如何實現。應用程序寬靜態變量C#控制檯應用程序
的Program.cs
public class Program
{
static IConfigurationRoot Config = null;
public static void Main(string[] args)
{
Config = new ConfigurationBuilder()
.SetBasePath(Environment.CurrentDirectory)
.AddJsonFile("appsettings.json")
.AddEnvironmentVariables()
.Build();
}
}
TestClass.cs
public class TestClass
{
public void DoSomething()
{
// Now I need to use that instantiated Config object here.
}
}
在另一個類中引用可執行程序集的成員是很少見的。我認爲你應該重新考慮設計。 – Crowcoder
你能提出一個建議嗎?我的要求是能夠在應用程序的任何位置訪問所有配置條目。 – TSR
我喜歡創建一個配置庫,並像任何數據存儲(如數據庫)一樣處理配置數據。所以也許可以專門創建一個類來保存這些字段。如果它是通過「Program.Config」公開的話,您可以使用該變量,但是它會根據SOLID原則濫用Program類。 – Crowcoder