2017-09-14 100 views

回答

0

所以,我最後做的只是添加的app.config文件。我還添加了一個app.release.config,並將其重命名爲app.config,作爲發佈過程的一部分。我無法使用配置轉換。我根本無法在Azure CI中工作。

0

Core 2.0 Web API您可以將您的配置,以舊app.config以及這樣:

IConfigurationRoot configuration = new ConfigurationBuilder() 
    .AddJsonFile("appsettings.json", optional: true) 
    .AddXmlFile("app.config") 
    .Build(); 

然後,你將能夠訪問由鍵實例連接字符串(和其他應用程序設置)(看起來像一個冒號分隔的XML路徑)。例如,對於連接字符串部分,你可以得到連接名稱MyConnectionName這樣的值:

key: "connectionStrings:add:MyConnectionName:connectionString" 
value: "...your connection string..." 

或者你可以實現你的詳細描述here,並有這樣的事情自己LegacyConfigurationProvider

IConfigurationRoot configuration = new ConfigurationBuilder() 
    .AddJsonFile("appsettings.json", optional: true) 
    .Add(new LegacyConfigurationProvider()) 
    .Build(); 

另請參閱Configuration in ASP.NET Core

+0

我們使用VS.核心2.0項目模板該模板中的Startup.cs不使用'IConfigurationRoot',也不使用ConfigurationBuilder。那些用於Core 1.x.你有沒有使用Core 2.0的默認項目模板Startup.cs的例子? – Bloodhound

+0

只需添加公共IConfigurationRoot配置{get;組; }屬性給你啓動文件,然後服務。配置(配置);見細節https://docs.microsoft.com/en-us/aspnet/core/fundamentals/configuration –

+0

因此,使它就像核心1.x的?我不能在現有模板中添加「public IConfigurationRoot Configuration {get; set;}」,因爲它已經聲明瞭「public IConfiguration Configuration {get;}」。從頭開始創建一個2.0項目,這樣你就能明白我的意思了。 – Bloodhound

相關問題