问题标签 [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.
c# - 即使使用自定义验证属性,Asp.net Web.APi 也会返回内置错误响应
您好我正在尝试为我的注册页面创建一致的验证。这是我遇到问题的属性:
在测试时,我意识到即使我为 DateTime 添加了自己的验证属性:
如果用户发布 null DateTime 我仍然会收到此响应文本:
“无法将空值转换为 System.DateTime。路径 'birthDate',第 1 行,位置 17。”
如何使 asp.net web.api 停止返回内置的错误响应文本?
asp.net-mvc-5 - 同一域中的 Web API 2 项目和 MVC 5 网站项目
使用的技术:
- 微风JS
- 数据
- 网络 API 2
- MVC 5
- IDE:Visual Studio 2013
我一直在为在一个解决方案中拥有一个 Web API 项目和一个单独的网站项目而苦苦挣扎。
- 我的 Web API 2 项目打开为:localhost:2020/ExampleProject.API
- 我的 MVC 5 网站项目打开为:localhost:5050/ExampleProject.WebSite
现在默认情况下 web api 不允许跨源策略。所以我尝试在我的 Web API 2 中启用 CORS,虽然我能够让它工作,但它只适用于最新的浏览器;我需要 IE7 到 IE9 的向后兼容性。
所以我玩了JSONP。我不喜欢对此缺乏支持。我能够让它在我的 Web API 2 项目中工作,但如果我想使用 BreezeController (如果使用微风js web api 库),它就不起作用。如果我想创建一个 ODataController,它也不起作用。
所以我正在远离跨源共享的想法;虽然希望将来无论我使用 BreezeJS WebAPI 帮助程序还是 ODataControllers 都会对 jsonp 有足够的支持。
目前,我不知道如何将我的 WebAPI 项目和我的 MVC 5 网站放在我可以拥有的同一个域下:
- 本地主机/ExampleProject.API
- 本地主机/ExampleProject.WebSite
我必须在我的主机文件中进行一些配置吗?如果我想从 VS2013 运行我的项目,它是否能够在同一个域下运行两个项目.. 还是我必须继续手动更改浏览器中的 URL?
asp.net-web-api2 - Web API 5.1 问题
更新到 5.1.0 后将数据发布到 WebApi 失败 嗨!你有关于这个问题的任何更新吗?我遇到了完全相同的问题。我愿意尽我所能提供帮助,因为这对我来说是一个表演障碍。
谢谢,-基里尔。
c# - 使用 MySQL 而不是 LocalDb
我正在尝试为 Web API 2 使用默认身份验证系统,我注意到它创建了以下数据库:
但我已经有一个带有 MySQL 的实体数据库。是否可以合并它们?
然后我可以像这样将上下文添加到启动选项中
它会起作用吗?
因为我不知道如何将 2 个数据库与 Entity 一起使用。身份验证不起作用,因为我为此替换了 Web Config 中的 EntityFramework 部分
那么是否可以对 AspNet 表使用数据库优先方法。
谢谢
编辑
使用 SQL Server 会更容易吗,因为它仍然可以用于这个项目?
c# - 升级到 Web API 2 会破坏应用程序
我有一个 Umbraco 7 应用程序,它使用 V4.0 程序集来处理诸如 System.Web.WebHost、System.Web.Http 和相关程序集之类的东西。我正在尝试让 Web API2 dll 与 Umbraco 应用程序一起使用,并且遇到了困难。
如果我使用程序集重定向默认为 V5.0 程序集,则应用程序会在 Umbraco 加载并尝试使用控制器时中断。这里的问题是,在 System.Web.Http 的 V5.0 中,ApiController 现在在设置 Request 时有一个检查。此检查总是失败并抛出 InvalidOperationException:
我正在尝试的另一件事是正确加载和使用两个 DLL。在这种情况下,我遇到了一个错误,但不知道我是否做得正确。我所做的只是添加文件夹以保留相同 dll 的不同版本,并使用以下方式将它们连接到 web.config 中:
错误:CS1705:程序集 'WebApi,Version=1.0.0.0,Culture=neutral,PublicKeyToken=null' 使用 'System.Web.Http,Version=5.1.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35',其版本高于引用程序集“System.Web.Http,版本=4.0.0.0,文化=中性,PublicKeyToken=31bf3856ad364e35”
有希望吗?
asp.net-web-api - 从 Request 对象中获取当前的 MediaTypeFormatter,可能吗?
我想从请求对象中获取 MediaTypeFormatter,这可能吗?
因此,如果请求作为
然后我想获得 MediaTypeFormatter,在这种情况下,它应该是 JsonMediaTypeFormatter。
我需要这样做的原因是我的 api 方法可以同时支持 MediaTypeFormatters(即 XML 和 JSON)。
我正在返回一个 HttpResponseMessage 并将内容设置为 ObjectContent,并且我需要传入媒体类型格式化程序,如果我将此值硬编码为 json,那么它将不支持 xml。
有人做过这样的事情吗?
提前致谢
c# - 使用 RouteAttribute 对 ApiController 进行单元测试
我以为是在网络上进行的简单搜索结果却不止于此。
最接近解决方案的是第一个可以使用属性进行路由的解决方案:AttributeRouting not working with HttpConfiguration object for writing Integration tests
但是 ASP.NET Web Api 2 呢?
我的单元测试
如何注入我的控制器,以便它读取控制器上的属性并设置路由,以便我可以实际进行一些测试?
asp.net-web-api - WebAPI 2.1 中自定义路由约束的更改
由于我将 WebAPI 2 应用程序更新为 WebAPI 2.1,路由停止工作。我有几个自定义路由约束实现为 GuidConstraint。我收到的异常如下:
System.InvalidOperationException:具有路由模板“{guid}/{language}/{controller}/{id}”的路由上的约束条目“guid”必须具有字符串值或实现“System.Web”的类型。 Http.Routing.IHttpRouteConstraint'。
文档中没有提到这个问题。
以下帖子的目的是知识共享和意见交流。
我之前的实现错了吗?2.1 中的新实现有哪些变化不再支持更通用的接口?
asp.net-web-api - 修改 ASP.NET 标识的连接字符串名称
我想存储更改连接字符串,使其指向具有所有必要表的现有数据库。当搜索“DefaultConnection”时,我无法在应用程序中的任何位置找到 Models 文件夹中没有任何与类相关的模型。我所看到的只是接口定义是元数据。我可以更改 web.config 中的连接字符串值以使其工作,但现在我很想知道它是如何实现的,这样如果我想自定义逻辑,我在哪里可以找到这些类?
我正在使用最新版本的 WebAPI 并使用 VS 2013。
令我困惑的是如何修改类以实现自定义逻辑,我找不到与身份相关的模型类。
angularjs - 尝试使用 angularjs 访问 REST 服务时出现 404
我有一个非常简单的 ASP.NET Web API 2 项目设置,只有一个控制器。控制器如下:
使用http://localhost:52491/api/ServiceCodes
,我可以在浏览器中看到结果。
但是,在我的 Angular 应用程序中,尝试访问相同的 url 时出现 404 错误。
角度应用程序在节点内运行:8000