asp.net – 引用依赖于ConfigurationManager的.net core 2中的.n
|
我们有一些遗留的4.5.2类库,它们共同使用ConfigurationManager.AppSettings [key]
是否可以在.net core 2应用程序中引用这些内容,以便在引擎盖下正确修补配置? 如果我将问题的键移植到appSettings.json,那么对ConfigurationManager.AppSettings的调用总是返回null. 一个例子是: {
"Logging": {
"IncludeScopes": false,"Debug": {
"LogLevel": {
"Default": "Warning"
}
},"Console": {
"LogLevel": {
"Default": "Warning"
}
}
},"appSettings": {"test": "bo"},"test": "hi"
}
然后: [HttpGet]
public IEnumerable<string> Get()
{
return new string[] { "value1","value2",ConfigurationManager.AppSettings["test"],ConfigurationManager.AppSettings["appSettings:test"] };
}
将显示: ["value1",null,null] 解决方法
您正在寻找的设置是可能的,设置可以保存在app.config中.
我有一个.NET 4.5.2类库“MyLibrary”和一个.NET Core 2.0 Web应用程序“WebApp”引用完整的.NET框架4.6.1. 我的图书馆 >具有System.Configuration的程序集引用 Web应用程序 >有MyLibrary的项目参考 所有其他文件和设置都是默认值.以下是上面提到的那些. MyLibrary项目 .NET 4.5.2 Foo.cs using System;
using System.Configuration;
namespace PFX
{
public class Foo
{
public String GetSomething()
{
String r = ConfigurationManager.AppSettings["foo"];
return r;
}
}
}
WebApp项目 .NET Core 2.0.1引用完整的.NET框架4.6.1. WebApp.csproj <Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>net461</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore" Version="2.0.3" />
<PackageReference Include="Microsoft.AspNetCore.Mvc" Version="2.0.4" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.Razor.ViewCompilation" Version="2.0.4" PrivateAssets="All" />
<PackageReference Include="Microsoft.AspNetCore.StaticFiles" Version="2.0.3" />
<PackageReference Include="Microsoft.VisualStudio.Web.BrowserLink" Version="2.0.3" />
</ItemGroup>
<ItemGroup>
<DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="2.0.4" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..MyLibraryMyLibrary.csproj" />
</ItemGroup>
<ItemGroup>
<Reference Include="System.Configuration" />
</ItemGroup>
</Project>
App.config中 <configuration>
<runtime>
<gcServer enabled="true"/>
</runtime>
<appSettings>
<add key="foo" value="bar"/>
</appSettings>
</configuration>
Program.cs中 using System;
using Microsoft.AspNetCore;
using Microsoft.AspNetCore.Hosting;
namespace WebApp
{
public class Program
{
public static void Main(string[] args)
{
PFX.Foo foo = new PFX.Foo();
String someting = foo.GetSomething(); // bar
BuildWebHost(args).Run();
}
public static IWebHost BuildWebHost(String[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.Build();
}
}
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – 什么是强类型的视图在ASP.NET MVC
- 是否有基于.NET的中央身份验证服务实现?
- asp.net-mvc – 使用Multipart格式的Web API模型绑定
- Azure Event Hub 技术研究系列3-Event Hub接收事件
- 初识ABP vNext(12):模块的独立运行与托管
- asp.net – 通过不同的Web应用程序共享相同的dll而无需复制
- 如何检查ASP.NET MVC View如果站点在localhost或127.0.0.1上
- ASP.NET HttpApplication.EndRequest事件未被触发
- 使用ASP.Net会员提供商忘记密码?
- 什么是在ASP.NET网站中嵌入视频的有效选项?
- 如何缓存输出的action方法,返回图像到asp.net mv
- asp.net-web-api – SignalR&WebApi – 碰撞
- asp.net – Web.config Build vs Release transf
- 如何确定ASP.NET站点(IIS)上的用户数量?和他们的
- 在TextBox,ASP.NET中处理ENTER按钮
- asp.net-mvc – 当多个用户创建用户时,修改了aut
- asp.net-mvc – 如何每秒自动刷新MVC PartialVie
- 如果我的Asp.Net会话有IsNewSession == true,那我
- asp.net-mvc – MVC4“无法等待”
- asp.net-mvc – ASP.NET MVC会话状态
