2016-08-01 92 views
0

我想設置一個ASP.Net核心應用程序從json文件中讀取配置設置。我正在使用VS2015和.NetCore 1.0(使用.Net Core Tools預覽版2)。我在獲取一段簡單的鍋爐板代碼進行編譯時遇到了問題。Startup.cs錯誤(ASP.Net核心配置)

我使用下面的代碼,這是在 http://asp.net-hacker.rocks/2016/03/21/configure-aspnetcore.html

public Startup(IHostingEnvironment env) 
    { 
     // Set up configuration sources. 
     var builder = new ConfigurationBuilder() 
      .AddJsonFile("appsettings.json") 
      .AddEnvironmentVariables(); 

     if (env.IsDevelopment()) 
     { 
      // This will push telemetry data through Application Insights 
      // pipeline faster, allowing you to view results immediately. 
      builder.AddApplicationInsightsSettings(developerMode: true); 
     } 
     Configuration = builder.Build(); 
    } 

但是發佈後,IDE /編譯器抱怨道:「名字‘配置’並不在當前的背景下存在」(的最後一行碼)。唯一的IDE建議是包含Microsoft.Extensions.Configuration。但是,這是一個不包含名爲「Configuration」的對象或屬性的名稱空間。

除了「AddApplicationInsightsSettings」失敗,並IConfigurationBuilder不包含AddApplicationInsightsSettings接受型IConfigurationBuilder的第一個參數的定義,並沒有擴展方法AddApplicationInsightsSettings可以發現

任何建議嗎? 感謝

回答

7

只需Configuration屬性添加到您的Startup類,教程已經錯過了「一步」:

public IConfigurationRoot Configuration { get; set; } 

ConfigurationBuilder.Build()方法只是返回的IConfigurationRoot情況下,你應該保存,如果需要進一步獲取設置啓動類(例如ConfigureServices方法)。

關於第二個錯誤,貌似你沒有添加Application Insights依賴性:

{ 
    "dependencies": { 
    "Microsoft.ApplicationInsights.AspNetCore": "1.0.0" 
    } 
} 
+0

非常感謝這個問題的答案。有關第二個錯誤的任何線索?謝謝。 – Hughgo

+0

已更新回答 – Set

+0

謝謝 - 我錯過了。 – Hughgo