问题标签 [asp.net-web-api2]

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 投票
32 回答
1464622 浏览

c# - 因为目标机器主动拒绝而无法建立连接?

有时我在对 WebService 执行 HttpWebRequest 时收到以下错误。我也在下面复制了我的代码。



0 投票
2 回答
2121 浏览

c# - ASP.NET Web API 模型绑定复杂对象的非顺序列表

我正在尝试使用 ApiController 对具有非顺序列表的复杂对象进行建模。除列表外的所有字段均设置正确,但列表包含一个元素(即使发布了两个列表元素)并且该元素为空。如果我采用完全相同的代码并将其指向在我的操作方法中使用相同参数类型的 MVC 控制器,那么一切都会按预期工作。

由于我使用的是非顺序列表,因此我使用 Phil Haack ( http://haacked.com/archive/2008/10/23/model-binding-to-a-所描述的隐藏的“.Index”输入)列表.aspx )

如果我删除“.Index”输入并将列表作为从 0 开始的顺序列表发送,ApiController 也会正确绑定列表。(此选项适用于测试,但在生产中不是一个很好的选项,因为可以添加列表项并被用户删除,这就是我要使用非顺序列表的原因。)

我知道 Web API 控制器的参数绑定与此处讨论的 MVC 控制器不同,但似乎非顺序列表应该在 Web API 控制器中正确绑定。我错过了什么吗?为什么相同的代码适用于 MVC 控制器而不适用于 Web API 控制器?如何在 Web API 中正确绑定非顺序列表?

这是我的帖子参数:

这是我的 Web API 控制器操作:

(request.BatchProductLots 列表设置为一个元素(即使发布了两个元素)并且该元素为空)

这是我尝试绑定到的带有列表的复杂对象:

0 投票
1 回答
1765 浏览

c# - 返回 IHttpActionResult 是否停止请求执行

这里@GlennBlock 提到抛出HttpResponseException立即停止请求执行,而返回HttpResponseMessage不会停止请求传播(据我了解)。

该异常对于立即停止处理并退出很有用。

相反,如果我返回 HttpResponseMessage,该请求将愉快地继续其余的处理并返回 404。主要区别在于是否结束请求。

在 .NET Web API 2 中,您还可以IHttpActionResultApiController. 它是否停止请求传播或它的工作方式类似于HttpResponseMessage

谢谢;)

0 投票
16 回答
174180 浏览

url - How to get base URL in Web API controller?

I know that I can use Url.Link() to get URL of a specific route, but how can I get Web API base URL in Web API controller?

0 投票
2 回答
235 浏览

jsonp - WebApiContrib Jsonp 和属性路由

根据WebApiContrib.Formatting.Jsonp GitHub 自述文件,似乎应该在 RouteConfig.cs 中输入:

我的 AppStart 中目前没有 RouteConfig.cs 文件。我使用 Web API 2 模板创建了它,我认为我没有在结构上进行任何更改。我确实有一个 WebApiConfig.cs 我已经设置:

如何包含它以使所有路由都能够返回 Jsonp?

0 投票
3 回答
21091 浏览

asp.net - IHttpActionResult - 如何使用?

我已经看到使用一些新的 IHttpActionResults 表示 OK、NotFound 的示例。我没有看到任何使用Unauthorized().

我现有的代码如下所示:

我想用这个替换它:

但我没有看到任何过载来传递异常详细信息。

另外,IHttpActionResult返回 500 错误的等价物是什么?

0 投票
1 回答
1769 浏览

asp.net-mvc-5 - WebApi 2 和 MVC 5 使用不同的路由属性吗?

阅读这篇关于 ASP.NET MVC 5 中属性路由的博文和这篇关于 Web Api 2 中属性路由的博文,看起来有两组路由属性,一组在System.Web.Mvc命名空间中,另一组在System.Web.Http.

  1. 这是对的吗?有人知道为什么会这样设计吗?
  2. 应该使用一个而不是另一个,还是应该并排生活?
0 投票
6 回答
89453 浏览

c# - 返回 IHttpActionResult 时如何对 web api 操作方法进行单元测试?

假设这是我的操作方法

测试将是

在此之后如何检查我的 http 状态码?

0 投票
1 回答
2197 浏览

.net - Assembly Manifest 与 .NET Web API 2 的绑定重定向不匹配

我已升级从 Visual Studio 2012 开始的 MVC 4 和 Web API 项目以使用 Web API 2(NuGet 包 5.0+)。

我添加了程序集清单以重定向到较新的库,如下所示:

这些包被设置为在构建时复制到本地 bin 目录,并且我已经验证了在本地计算机和我们用于测试正确程序集的远程 Web 服务器上的 bin/ 文件夹中。远程计算机上的 GAC 中不存在 Web API 库的副本。

然而,System.Net.Http.Formatting 仍然声称在向应用程序发出请求时它没有找到正确的版本。

谁能解释为什么由于明显不匹配而仍然存在程序集绑定问题?

0 投票
1 回答
704 浏览

rest - 针对 REST 服务的 Web API2 身份验证

我们想使用 Web API2 的新授权/令牌系统,并已升级到 MVC5/Web API2。

有一个内部 REST API 已经完成了我们希望重用的身份验证。本质上,它需要 uid/pwd 和一些额外的配置文件参数并返回 true/false。

问题:如何针对该服务而不是默认的基于 Entity Framework 6 DB 的身份存储连接身份验证过滤器?

我查看了 UserManager 类,不清楚这是正确的路径。