c# - 将路由属性添加到 ApiController

标签 c# asp.net-mvc asp.net-web-api

我正在使用 .NET Framework 4.0 和 C# 开发 ASP.NET Web Api 应用。

我有这个:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;

namespace MyProject.Web.Api.Controllers
{
    public class UserADController : ApiController
    {
        [HttpGet]
        [Route("api/UserAD/GetAllUsers")]
        public HttpResponseMessage GetAllUsers()
        {
            HttpResponseMessage response = null;


            return response;
        }

    }
}

但是 System.Web.Http.dll 上没有 RouteAttribute(在 \packages\Microsoft.AspNet.WebApi.Core.4.0.30506.0\lib\net40\System.Web.Http. dll).

属性路由在 ASP.NET MVC 5 或更高版本和 ASP.NET Web API 2 中是原生的。

在此 ASP.NET 版本中,此 Route 属性的等效项是什么?

最佳答案

如果您想在 ASP.Net WebAPI 1 中使用基于属性的路由,请安装此 nuget -

Install-Package AttributeRouting.WebApi

然后装饰你的 Controller Action -

[GET("api/value")]
public IEnumerable<string> Get()
{
    return new string[] { "value1", "value2" };
}

然后运行解决方案-

enter image description here

关于c# - 将路由属性添加到 ApiController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29943463/

相关文章:

asp.net - 与 ASP.NET Web 应用程序关联的 Azure WebJob 无法从 WebJob 访问用户角色

c# - 在不丢失信息的情况下将 ARGB 转换为 RGB

c# - ADO.NET MVC 查询外键

css - asp.net mvc 中的剑道网格 css

asp.net-web-api - IdentityServer v3 缺少声明和身份信息

jquery - 使用 JSONP 的 Ajax 调用不起作用。未提供回拨

asp.net-web-api - 异步 WebApi ActionFilterAttribute。异步模块或处理程序已完成,而异步操作仍处于挂起状态

调用 EF Core 扩展方法的 c# 单元测试方法

c# - 当另一个属性更改时更新多个属性?

c# - 为什么我的 View 不显示 ViewBag 的值?