我有一个在NetStandard2.0中创建的程序集.它使用System.Configuration.ConfigurationManager读取AppSettings .我安装了版本为4.4.X的System.Configuration.ConfigurationManager的 nuget包,适用于NetStandard2.0.
当我在控制台应用程序(.Net Core)中引用此程序集时,它正在正确读取AppSettings,但是当我在旧的.NetFramework(4.6.X)控制台应用程序中引用此程序集时,它无法正常工作并抛出异常.
请参阅下面的代码.
程序集1:NetStandard 2.0
Nuget:System.Configuration.ConfigurationManager 4.4.0
using System.Configuration;
namespace Bootstrapper.Lib
{
public class Bootstrapper
{
public Bootstrapper()
{
}
public void LoadAppSettings()
{
string serachPattern=
ConfigurationManager.AppSettings["AssemblySearchPattern"];
}
}
}
Run Code Online (Sandbox Code Playgroud)
控制台应用程序:NetFx 4.6.X
using System;
using Bootstrapper.Lib;
namespace Bootstrapper.Console
{
class Program
{
static void Main(string[] args)
{
new Bootstrapper().LoadAppSettings();
}
}
}
Run Code Online (Sandbox Code Playgroud)
运行后的异常:
'Could not load file or assembly 'System.Configuration.ConfigurationManager,
Version=4.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51' or one
of its dependencies. …
Run Code Online (Sandbox Code Playgroud) 我知道是什么View Engine
,我更喜欢使用Razor
视图引擎,因为它在ASPX
引擎上的语法简单.内置视图引擎为您执行几乎所有任务,然后在什么情况下我应该创建自己的视图引擎,
我搜索了它,但获得了如何创建它的答案,而不是何时以及为何创建它.
任何人都可以帮我描述实时情景吗?
我正在为 ASPNetCore Web API 项目编写集成测试。在阅读它时,我遇到了两个术语,首先是
Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory
其次是
Microsoft.AspNetCore.TestHost
参考:
https://docs.microsoft.com/en-us/aspnet/core/test/integration-tests?view=aspnetcore-2.1
https://koukia.ca/integration-testing-in-asp-net-core-2-0-51d14ede3968
我有点困惑,为什么以及应该使用哪种设置来测试 Web API 控制器?