问题标签 [system.web.http]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - Nunit 测试项目中缺少 System.Web.Http 方法
我正在为ApiController
. 我继续收到命名空间System.MissingMethodException
中方法的多个异常System.Web.Http
。
消息:System.MissingMethodException:找不到方法:'System.Net.Http.HttpRequestMessage System.Web.Http.ApiController.get_Request()'。
消息:System.MissingMethodException:找不到方法:'System.Threading.Tasks.Task`1 System.Web.Http.IHttpActionResult.ExecuteAsync(System.Threading.CancellationToken)'。
测试项目编译得很好,具有正确的 using 语句、包引用和绑定。但是,一旦它尝试运行,就会抛出上述异常之一(以首先遇到的为准,具体取决于代码的结构)。还可能值得注意的是,当System.Web.Http
不使用方法时,测试项目运行得很好。
我希望这个问题有我的答案,但我找不到任何差异。我已经多次卸载/重新安装。验证两个项目使用相同的版本(5.2.7.0)。通过在调试期间查看模块来验证正在使用的版本。并验证两个项目的参考路径都指向正确的 nuget 包文件夹:(...\Main\src\packages\Microsoft.AspNet.WebApi.Core.5.2.7\lib\net45\System.Web.Http. dll)
以下是包装和绑定信息,如果需要其他任何内容,请告诉我。我已经浪费了几天的时间,任何帮助将不胜感激。
主项目-packages.config
主项目 - web.config 绑定
测试项目 - packages.config
测试项目 - app.config 绑定
编辑 - 添加项目参考和模块屏幕截图
主要项目 - csproj 参考资料
测试项目 - csproj 参考
c# - 无法添加参考:System.Web.Http 4.0.0
我正在尝试做的事情:
在第一次构建我的解决方案时,我看到与缺少命名空间相关的错误。他们有一个代码
CS0234:命名空间“System.Web”中不存在类型或命名空间名称“Http”(您是否缺少程序集引用?)
到目前为止我已经尝试过但对我不起作用:
.net 4.5 升级后 System.Web.Http 丢失
System.Net.Http:命名空间中缺少?(使用.net 4.5)
我试图从我自己的角度做但似乎不起作用:
在Nuget 的官方网站上,我正在尝试使用包管理器命令安装此包:
但是,我在控制台上看到以下错误
我想从你这里得到什么:
在这一点上,解决此问题的唯一方法是联系我的其他团队成员并要求他们将丢失的邮件发送给我.dll
。但我会鼓励一个答案,通过指向根来帮助我解决这个问题此问题的原因以及是否有其他方法可以获取此缺少的参考。
有用的说明:
我正在Visual Studio 2019上构建此解决方案,该解决方案指向 . net framework version 4
. 我遇到了建议将框架版本更改为4.5
. 但即使在那之后我在参考文献中也找不到 .dll (是的,我已经检查了扩展和框架)
c# - .NET 5 项目中 System.Web.Http 的 HttpConfiguration
更新:
完整的代码示例:
原来的:
我正在按照本指南进行模拟IHttpClientFactory
。
https://stackoverflow.com/a/54227679/3850405
为了使它工作,我需要以下行:
Visual Studios 修复是Install package 'Microsoft.AspNet.WebApi.Core'
.
这有效,代码运行良好,但我收到以下警告:
警告 NU1701 包 'Microsoft.AspNet.WebApi.Core 5.2.7' 已使用 '.NETFramework,Version=v4.6.1, .NETFramework,Version=v4.6.2, .NETFramework,Version=v4.7, .NETFramework,Version =v4.7.1, .NETFramework,Version=v4.7.2, .NETFramework,Version=v4.8' 而不是项目目标框架'net5.0'。此软件包可能与您的项目不完全兼容。
我尝试安装Microsoft.AspNetCore.Mvc.WebApiCompatShim
下面推荐的,但它不起作用。
https://www.nuget.org/packages/Microsoft.AspNetCore.Mvc.WebApiCompatShim
https://stackoverflow.com/a/57279121/3850405
是否有另一个 NuGet 可以用来解决这个问题?
查看依赖关系Microsoft.AspNet.WebApi.Core
只依赖于Microsoft.AspNet.WebApi.Client
它反过来使用.NETStandard 2.0
. 理想情况下,我不想创建一个新的项目目标.NET Standard 2.0
并将代码放在那里。我想使用该.NET 5
项目。
https://www.nuget.org/packages/Microsoft.AspNet.WebApi.Core/
https://www.nuget.org/packages/Microsoft.AspNet.WebApi.Client/
https://docs.microsoft.com/en-us/dotnet/standard/net-standard
c# - C# 模型绑定复杂属性
在我的 REST API 中,我的模型绑定没有映射作为对象列表的属性。它正确地到达控制器,并显示所有属性,但它们是空的。
例如,对于 POST 请求{age: 202, setting: ["school"]}
,我在响应中得到如下内容:
我希望它回应这样的事情:
如何引导它将设置参数解析为List<Setting>
?
这是控制器:
这是模型:
这是设置类:
我开始沿着这条路径手动解析事物,但这是 JObject、JToken、JArray 的噩梦。
也许我需要一个自定义绑定模型?我迷失了试图弄清楚如何构建和使用一个。