来自ASP.NET CORE 2.0的FromUri

Ale*_*ata 39 asp.net-core asp.net-core-2.0

这个问题是因为在我使用ASP.NET CORE 2.0的 MVC项目中,我无法添加[FromUri] attribute到我的驱动程序中.

我尝试使用类似的库System.Web.Http,但我不认识它们.然后从Nuget Microsoft.AspNet.WebApi.Core"和" 安装这些System.AppDomain.NetCoreApp,这导致能够使用System.Web.Http但由于模糊问题我不被允许使用它,但如果我发现[FromUri]存在.

主要问题是ASP.NET核心2.0 MVC还是WebApi是否存在[FromUri]

如果它存在,如何使用它?

Mik*_*e_G 88

我想你可能在寻找[FromQuery]:https: //docs.microsoft.com/en-us/aspnet/core/mvc/models/model-binding#customize-model-binding-behavior-with-attributes

[FromUri] 用于Asp.Net WebApi 2,而不是asp.net核心

  • 请参见[FromRoute]或[FromQuery]。 (3认同)

Kol*_*n N 23

TLDR:您可以使用[FromQuery][FromRoute]代替[FromUri]


正如Mike_G在他的回答中所说,你可以使用[FromQuery]属性代替[FromUri].但是你可能还需要[FromRoute]在某些情况下使用Muhammad Umar在评论中所指出的.

FromRoute

当参数作为URL字符串的一部分传递时,将使用此属性.

例如: api/countries/1

FromQuery

顾名思义,FromQuery参数必须作为查询字符串传递.

例如: api/countries?id=1

参考文献:

  1. FromRoute - Microsoft Docs
  2. FromQuery - Microsoft Docs
  3. FromUri - Microsoft Docs