4 回答

TA貢獻1828條經驗 獲得超13個贊
對于該netstandard2.0項目,我只能在(來自)HostingEnvironment中獲取-安裝了軟件包:HostBuilderContextIHostBuilder.ConfigureAppConfigurationMicrosoft.Extensions.Hosting.Abstractions
public static IHostBuilder CustomConfigureAppConfiguration(this IHostBuilder hostBuilder)
{
? hostBuilder.ConfigureAppConfiguration((context, config) =>
? {
? ? // this works with Microsoft.Extensions.Hosting.Abstractions installed
? ? var env = context.HostingEnvironment;
? });
? return hostBuilder;
}
HostingEnvironmentfrom WebHostBuilderContext(from IWebHostBuilder.ConfigureAppConfiguration) 在項目執行時仍然會引發異常netcoreapp3.0。這在以前的版本中工作得很好。
另外,當注釋掉時,我仍然可以在調試期間檢查它:
似乎仍然有點不對勁,但至少現在可以了。
更新
經過更多挖掘后,我發現了引用的差異:
-?netcoreapp3.0
- 通過共享框架?Microsoft.AspNetCore.Hosting.Abstractions, Version=3.0.0.0
-netstandard2.0
通過 NuGetMicrosoft.AspNetCore.Hosting.Abstractions, Version=2.2.0.0
v2.2 公開了v3.0 中Microsoft.AspNetCore.Hosting.IHostingEnvironment
已棄用的內容
截至 2019 年 10 月 1 日,v3.0 在 NuGet 上不可用。

TA貢獻1802條經驗 獲得超5個贊
我有類似的問題。就我而言(EF 3.0),我正在使用一個帶有Microsoft.Extensions.Hosting (3.0.1)
. 這是使用來自不同項目的類。這第二個項目包括Microsoft.Azure.WebJobs.Extensions (3.0.5)
。該包有Microsoft.Azure.WebJobs (3.0.14)
一個依賴項。這包括Microsoft.Extensions.Hosting (2.1.0)
與 EF 3.0 不兼容的 。包括
<PackageReference Include="Microsoft.Extensions.Hosting" Version="3.0.1" />
在第二個項目中解決了我的問題。

TA貢獻1829條經驗 獲得超7個贊
請將您的替換HostingEnvironment
為WebHostEnvironment
.
正如文件所說:
將 IHostingEnvironment 替換為 IWebHostEnvironment 并為 Microsoft.Extensions.Hosting 命名空間添加 using 語句。

TA貢獻1784條經驗 獲得超7個贊
我遇到了這個問題,我的無服務器 API 有另一個項目作為參考。在該引用的項目中,我使用了以下 PackageReference:
Microsoft.Extensions.Configuration.Abstractions
Microsoft.Extensions.Logging.Abstractions
我只有在將版本更改為 2.1.0 后才能使其工作,我使用的是 v3+ 版本
- 4 回答
- 0 關注
- 331 瀏覽
添加回答
舉報