问题标签 [asp.net-web-api-routing]

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 回答
2159 浏览

asp.net-web-api-routing - 找不到方法:'System.Web.Http.Controllers.ServicesContainer

我试图在 VS2012 中使用 webAPI 注册路由。在 GlobalConfiguration.Configuration.Routes 它抛出以下错误。有人可以帮我弄这个吗?


0 投票
1 回答
139 浏览

c# - 我可以将我的 WebAPI 路由设置为要求包含参数 X 或参数 Y 吗?

对于我的控制器中的 GET 函数,我想要求传入一个名称。对于 PUT 函数,我想要求传入 id(对象在消息正文中)。例如:

我可以创建一个需要 name 或 id 参数存在的路由吗?在伪代码中:

或者什么是最好的路由方式?

0 投票
1 回答
4871 浏览

asp.net-web-api - Asp.net Web API:在控制器上未找到任何操作

我正在使用 Visual Studi0 2010。在我的WebApiConfig.cs文件中,我有以下配置,我可以映射这两个 url/Values/Values/1. 它工作正常。

因为我想要我的自定义 URL/Values/Machines/Values/Machines/100,所以我将上面的设置更改为下面。

它现在映射到下面的 url,除了这个,/Values/1. 请让我知道我错过了什么。

谢谢。

0 投票
2 回答
2463 浏览

asp.net - WebApi 中的 Html.BeginForm - 路由

我有一个 Web API 项目作为我的解决方案的一部分(也包含一个 MVC4 项目),并且在 Api 项目中我试图将一个表单发布到 Values 控制器 Post 方法(从 Api 项目中的一个视图)。

使用Html.BeginForm()Html.BeginForm("Post", "Values")发布到,/Values/Post但我需要它去/api/Values/Post

知道我需要将哪些重载或设置发布到正确的位置吗?

我可以从提琴手(例如 localhost/api/values)中很好地使用所有操作方法。

0 投票
1 回答
1859 浏览

asp.net-mvc - 如何从 MVC 项目路由到另一个项目中的 MVC ApiController?

我已经为这个问题苦苦挣扎了至少 4 个小时,尝试了我能找到的所有解决方案。

我的主要项目是使用 Asp.Net 和 MVC 设置的,它们可以很好地路由到项目中的控制器。我正在集成一个库,该库公开了一个在另一个项目中使用 ApiControllers 的 JSON api,但我无法让主项目路由到库项目中的任何内容,它只返回一个 404 海峡。

在我的主要项目 global.asax 中:

在我的库项目 UserController 中:

我希望工作的 URL 都没有: /testapi /testapi/User /testapi/User/Get /testapi/User/Get?id=1

他们都返回 404。

我什至使用了路由调试器来验证路由是否设置正确: 路线

我错过了什么?

0 投票
2 回答
1786 浏览

asp.net-web-api - 对 Web API 的 POST 请求的 JSON 反序列化问题(使用 EF 5)

我有一个使用 ADD.net DB 模型生成的数据模型,用于从 Azure SQL DB 生成 .edmx 文件。

包含为 .edmx 文件生成的代码的设计器文件,如下所示 -

和一个控制器方法作为

我在 POST 请求中传递的 JSON 正文是 -

问题:

  1. 虽然我可以将 Post 请求发送到 Web API,但用户对象会填充值设置为null的属性。

对我来说,问题似乎在于 JSON 序列化。我尝试 Bing 这个问题,发现 Web API 内置的 JSON 序列化很糟糕,需要自定义将 JSON.NET 定义为默认序列化程序。不幸的是,这对我不起作用。

有什么我可能遗漏的吗?

哦,是的,我通过提琴手发送的 Post 请求看起来像

0 投票
1 回答
3515 浏览

c#-4.0 - 防伪令牌

我已经使用 MVC.NET 4.0 完成了一个网站,并且在我的本地主机上一切正常。但是,当我将网站上传到我的服务器上并尝试使用我的用户名和密码登录时,我在登录时遇到错误:-

究竟是什么问题?我是否需要更改帐户控制器的登录操作中的任何内容?

谢谢你的帮助

0 投票
3 回答
1232 浏览

asp.net-web-api - WebApi 参数

我对 WebApi 很陌生,不了解参数映射。我有一个带有 2 个参数的 HttpGet 方法的控制器。在 WebApiConfig 映射中定义如下

这似乎工作正常。

以此类推,我添加了另一个具有 3 个参数 HttpGet 方法的控制器 (DetailsController)。

我已经添加

但是导航到

给出 404 错误并说

在与请求匹配的控制器“详细信息”上未找到任何操作。

但是像这样导航

给出正确的结果。

这是为什么?我想像第一种情况一样用逗号分隔。为什么它在第一种情况下有效,而在第二种情况下无效?

工作控制器的方法:

不工作:

两者都有 HttpGet 属性。

0 投票
1 回答
227 浏览

asp.net - ASP.NET mvc 多路由

我用谷歌搜索了很多具有相同问题的页面,但我无法解决我的问题。所以我在控制器中有这个

这在 WEBApiConfig 中:

当我输入 localhost/api/questions 和 localhost/api/questions/1 时,我不明白

给我多个路线错误...

谢谢..

0 投票
2 回答
1263 浏览

asp.net-mvc - 捕获路由错误

我正在构建一个 RESTful API,我想控制所有可能的输出给我的消费者。我正在实现ExceptionFilterAttribute过滤控制器中引发的所有异常。然而,这并不能让我控制在到达控制器代码之前我的应用程序中可能发生的错误——例如路由错误。默认行为发回一个标准的序列化 HttpError ,泄露了太多我喜欢的内部信息,例如控制器类名等。我想避免这种情况。改变这种行为的最佳方法是什么?