问题标签 [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.

0 投票
1 回答
813 浏览

asp.net-web-api - MEF - 错误的程序集版本

我有一个使用 MEF、Webapi 和 OData 的 Web 应用程序。对于 MEF,我创建了一个按需加载目录的辅助类(首次访问时)

以下是 MEF 集成代码。

我的一个项目(实际的 Web 应用程序项目)使用以下 nuget 包(其中包括): WebApi 5.2.3 WebApi.OData 5.7.0

我的问题是,当 MEF 类尝试加载此程序集(使用 OData 和 WebApi 的程序集时,它引发了运行时错误,记录在下面。问题仅发生在生产机器上的部署中。在开发中一切正常。

正如您在下面的错误中看到的那样,似乎即使项目引用了 System.Web.Http 版本 5.2.3.0,在运行时 System.Web.Http.Odata 程序集也会尝试加载 System.Web.Http 版本5.2。 2.0 (!?!?!?)

在我的项目中,引用设置为正确的 dll(版本 5.2.3.0),dll 设置为Copy Local=True,并且在 web.config 我有

我在这个项目(程序集)中没有任何需要由 MEF 组成的类,所以我可以简单地将它排除在 MEF 加载之外,但是这个错误让我感到困惑,我想找到一个解决方案,以防万一我在其他程序集中遇到了类似的问题。

这是我得到的错误

0 投票
0 回答
4106 浏览

cors - 将代码从 git 下载到新机器后,无法加载文件或程序集 System.Web.Cors,版本 = 5.2.3.0

我在工作中获得了一台更新的笔记本电脑,并检查了所有内容,然后将其下载到我的新机器上。然后几乎花了一整天的时间整理所有 Nuget 引用并重新安装软件包等...我现在遇到了错误主题行...

请注意,它正在寻找 System.Web.Cors 而不是 System.Web.Http.Cors.dll 确实存在......

下面是我的packages.config ..

我的网络配置相关部分是......

该项目构建良好,有一些警告,但是在调试中本地运行它时我得到了错误

0 投票
1 回答
1861 浏览

c# - 未找到与请求 URI 匹配的 HTTP 资源,未找到与控制器匹配的类型

当我点击网址时: http://localhost/api/adxxx/getDeals/?input=2

我收到以下错误:

"Message": "没有找到与请求 URI ' http://localhost/api/adxxx/getDeals/?input=2 '匹配的 HTTP 资源。",

"MessageDetail": "找不到与名为 'adxxx' 的控制器匹配的类型。"

我该如何解决这个问题?具有不同路线的非常相似的 api 工作正常。

当我向我的 api 添加流畅的验证时,就会发生这种情况。这将我的 System.Web.Http.dll 更新为 v5.2.3.0

0 投票
1 回答
598 浏览

c# - 命名空间“System.Web.Http”中不存在类型或命名空间名称“Dependencies”

我从 .NET4 -> .NET461 更新了我的项目,它在我的本地机器上构建时没有任何错误。但是,当我推动它并开始团队城市建设时,它会因该问题主题的错误而崩溃。队城机也搭载了.NET461。我不能Dependencies以任何方式从 nuget 安装命名空间,因为它应该内置到System.Web.Http模块中。如何解决?

0 投票
3 回答
6516 浏览

.net - 在 asp.net web api 应用程序中找不到命名空间 System.Web.Http.Results

我有一个 asp.net web api 应用程序,其中有这一行:

我的问题是无法识别命名空间,我验证system.Web.Http了 bin 文件夹中存在 dll !

所以我需要知道:

  • 这个问题的原因是什么?
  • 我该如何解决?
0 投票
2 回答
2451 浏览

asp.net-mvc-4 - 面对“无法加载文件或程序集‘System.Web.Http.WebHost, Version=4.0.0.0,’或其依赖项之一。”

我正在尝试在服务器上部署 MVC Web API 解决方案。该服务器具有 Windows 2012 R2 操作系统。这是基于 MVC 4 的 Web API 解决方案。服务器安装了 .Net 4.0 框架。除了这台服务器机器外,该解决方案已按预期部署并正常工作。注意:那些其他机器安装了 Visual Studio。

我的问题是 - 无论我应用哪种方法,无论是解决方案本身还是发布解决方案,它都不起作用并给出以下错误。

无法加载文件或程序集“System.Web.Http.WebHost,Version=4.0.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35”或其依赖项之一。该系统找不到指定的文件

说明:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。

异常详细信息:System.IO.FileNotFoundException:无法加载文件或程序集“System.Web.Http.WebHost,Version=4.0.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35”或其依赖项之一。该系统找不到指定的文件。

堆栈跟踪说:[FileNotFoundException:无法加载文件或程序集'System.Web.Http.WebHost,Version = 4.0.0.0,Culture = Neutral,PublicKeyToken = 31bf3856ad364e35'或其依赖项之一。系统找不到指定的文件。] OSCARService.WebApiApplication.Application_Start() +0

[HttpException(0x80004005):无法加载文件或程序集“System.Web.Http.WebHost,版本=4.0.0.0,文化=中性,PublicKeyToken=31bf3856ad364e35”或其依赖项之一。系统找不到指定的文件。] System.Web.HttpApplicationFactory.EnsureAppStartCalledForIntegratedMode(HttpContext context, HttpApplication app) +544 System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext, HttpContext context, MethodInfo[] handlers) +186 System.Web。 HttpApplication.InitSpecial(HttpApplicationState state, MethodInfo[] handlers, IntPtr appContext, HttpContext context) +172 System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext, HttpContext context) +402 System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext) + 343

[HttpException(0x80004005):无法加载文件或程序集“System.Web.Http.WebHost,版本=4.0.0.0,文化=中性,PublicKeyToken=31bf3856ad364e35”或其依赖项之一。系统找不到指定的文件。] System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +579 System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +112 System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) + 716

我尝试在框架目录中找到这个文件(System.Web.Http.WebHost),但找不到这个特定的文件。

我想知道这个文件是否必须在物理上可用?

我也尝试将 System.Web.Http DLL 设置为"CopyLocal='True'"但没有用。

我已经尝试在这里寻找类似的情况/问题答案,但无法真正找到任何方向。

如果有人可以在这里为我的问题提供指导,我将不胜感激。

0 投票
1 回答
288 浏览

asp.net-mvc-4 - 从 nuget 添加 Telegram.Bot 后,MVC 编译失败

我正在使用 vs2012 并创建了一个 MVC4 项目

我将为电报机器人实现一个 webhook。

但是在我从 nuget 添加 Telegram Bot Api 后,我的项目无法完全编译并引发如下异常:

尝试通过方法“System.Web.Http.HttpConfiguration..ctor(System.Web.Http.HttpRouteCollection)”访问方法“System.Web.Http.HttpConfiguration.DefaultFormatters()”失败。

我在 stackoverflow 上找到了一些解决方案,但他们帮不了我。有人 siad 卸载并安装 WebApiClient 但它没有任何影响。

0 投票
3 回答
2925 浏览

c# - 天蓝色函数中的 Http 触发器 - 以驼峰形式序列化对象

我创建了一个 HttpTriggered azure 函数,它以大写形式返回响应。如何将其转换为驼峰式?

上面的代码给了我大写。下面的代码给了我一个错误堆栈跟踪

堆栈跟踪

0 投票
1 回答
282 浏览

c# - 使用 System.Web.Http 从控制器返回错误代码

我编写了一个非常轻量级的 REST API,用于验证用户。我想将验证作为 JSON 对象返回,我可以这样做,但是如果缺少参数,我想用一些信息来回退错误。这是我的控制器

当“应用程序”被传入时,我得到了一个不错的 JSON 对象。但是,当我在检查 IsNullOrEmpty 时尝试向用户返回错误时,如果我只是使用 PostMan 调用:

状态设置为“405 Method Not Allowed”,但我想传递一些文本来说明它失败的原因。所以我尝试了:

这只是在我的控制下停止执行。所以我做了一个 return 而不是 throw 我得到了 200 的状态(表明一切都很好)但是 JSON 标头数据:

{“响应”:{“版本”:{“_Major”:1,“_Minor”:1,“_Build”:-1,“_Revision”:-1},“内容”:null,“StatusCode”:405, "ReasonPhrase": "Method Not Allowed", "Headers": [], "RequestMessage": null, "IsSuccessStatusCode": false }, "Message": "处理 HTTP 请求导致异常。请查看 HTTP 响应由此异常的 'Response' 属性返回以获取详细信息。", "Data": {}, "InnerException": null, "TargetSite": null,“StackTrace”:null,“HelpLink”:null,“Source”:null,“HResult”:-2146233088 }

正如您从 catch 中的代码中看到的那样,我也在尝试做同样类型的事情。如何将带有相应信息文本的 StatusCode 返回给调用者,以便他们检查状态,如果不是 200,请检查正文中的错误文本?

谢谢

0 投票
2 回答
231 浏览

c# - 删除特定 API 调用的授权规则

我有一个 WEB Api 控制器,在控制器顶部有 [Authorize] 标记 - 这意味着此类中的所有 API 都将应用此规则。像这样:

我的问题是,对于此类中的特定调用,我不希望应用此 Auth 规则。我敢肯定我以前见过这样做的方法,但是对于我所有的谷歌搜索,我都找不到它。我认为它是这样的:

有任何想法吗???