.Net Web Api获取方法

问题描述 投票:0回答:1

我正在学习.NET Web Api。

所以这是默认的GET方法

// GET: api/UserProfiles/5
[ResponseType(typeof(UserProfile))]
public IHttpActionResult GetUserProfile(int id)
{
    UserProfile userProfile = db.UserProfiles.Find(id);
    if (userProfile == null)
    {
        return NotFound();
    }

    return Ok(userProfile);
}

这是我的模特:

public class User
{
    public int Id { get; set; }
    public string Name { get; set; }
    public int Phone { get; set; }
}

如何通过q​​azxswpoi而不是Name进行搜索。根据我的理解,我需要将ID改为GetUserProfile(int id),而在GetUserProfile(string name),我需要改变

WebApiConfig.cs

config.Routes.MapHttpRoute(
            name: "DefaultApi",
            routeTemplate: "api/{controller}/{id}",
            defaults: new { id = RouteParameter.Optional }
        );

但它不起作用。关于如何做的任何提示?

c# .net asp.net-web-api get
1个回答
1
投票

不,你不应该改变路线。只需你仍然使用 config.Routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{name}", defaults: new { name = RouteParameter.Optional } ); ,请求将是GetUserProfile(string name)

© www.soinside.com 2019 - 2024. All rights reserved.