我正在尝试添加一个ASP.NET核心Web API到我的应用程序中,这样外部应用程序就可以查询它在内存中的数据,尽管它抱怨我的系统上缺少文件。
我安装了Microsoft.AspNet.WebApi.OwinSelfHost
包并添加了以下代码:
var config = new HttpSelfHostConfiguration("http://localhost:8080");
现在我得到这个错误:
未处理的异常。系统.IO.文件未找到异常:未能加载文件或程序集“System.ServiceModel,版本=4.0.0.0,区域性=neutral,PublicKeyToken= b77a5c561934e089”。系统找不到指定的文件。
文件名:“系统.服务模型,版本=4.0.0.0,区域性=非特定区域性,公钥标记=b77a5c561934e089”
如果我安装包System.ServiceModel.Primitives
,那么我会得到:
未处理的异常。系统.IO.文件未找到异常:未能加载文件或程序集“System.ServiceModel.Http,版本=4.10.0.0,区域性=中性,PublicKeyToken= b03f5f7f11d50a3a”。系统找不到指定的文件。
文件名:“System.ServiceModel.Http,版本=4.10.0.0,区域性=非特定区域性,公钥标记=b03f5f7f11d50a3a
如果安装System.ServiceModel.Http
,则会得到:
未处理的异常。系统类型加载异常:未能从程序集"系统.服务模型,版本=4.0.0.0,“加载类型”系统.服务模型.
1条答案
按热度按时间6rqinv9w1#
这是因为当前没有包含
HostNameComparisonMode
类型的ASP .NET-Core的System.ServiceModel.dll
版本。例如,如果转到Microsoft文档中的HostNameComparisonMode Enum页并选择
.NET 5
,则将收到以下消息:请求的页面不可用于**.NET 5**。您已被重定向到此页面可用于的最新产品版本。
NET 6/7/8也是如此。
System.ServiceModel.dll
中将出现以下声明:*