【问题标题】:FromUri in ASP.NET CORE 2.0ASP.NET CORE 2.0 中的 FromUri
【发布时间】:2018-06-20 01:41:53
【问题描述】:

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

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

主要问题是在 ASP.NET core 2.0 MVC 或 WebApi 中是否存在[FromUri]

如果存在,如何使用?

【问题讨论】:

    标签: asp.net-core asp.net-core-2.0


    【解决方案1】:

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


    正如 Mike_G 在他的 answer 中所说,您可以使用 [FromQuery] 属性代替 [FromUri]。但在某些情况下,您可能还需要使用 [FromRoute],正如 cmets 中 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

    【讨论】:

      【解决方案2】:

      我想你可能正在寻找[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 核心

      【讨论】:

      • @AlexisZapata 您忘记将 Make 的回复标记为您问题的答案
      • 参见 [FromRoute] 或 [FromQuery]。
      猜你喜欢
      • 1970-01-01
      • 2018-03-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-17
      • 2018-08-21
      相关资源
      最近更新 更多