在我们最近的应用程序中,我们计划将MVC Web API用作Middler层服务。这意味着,前端将访问WebAPI middler层服务以从DB获取所需的所有数据并将数据更新回DB。除此之外,我们还需要许多其他方法。例如,检查用户是否已存在于系统中,验证地址等。现在我已经说明我的webapiconfig.cs路由变得越来越复杂。例如,WebApi项目中的UserController将具有以下方法。
public User Get(int userId) { }
public bool IsUserExists(string username)
{
}
public bool UpdateUser([FromBody]User user)
{
}
public bool ChangePassword(string username, string password)
{
}
要管理所有这些,我可能需要webapiconfig.cs中的这么多路由配置。当其他控制器出现时,我不确定如何处理这些问题。我应该使用AttributeRouting吗?任何建议都高度赞赏。感谢。
答案 0 :(得分:2)
如果您可以选择使用web api 2,请转到attribute routing。您可以在配置路由时节省大量的开发工作。
还要确保遵循基于资源的路由设计和REST原则,而不是旧的RPC样式路由。即基本的CRUD操作: -
创建 - HTTP POST
至/user
阅读 - HTTP GET
至/user
或/user/{id}
更新 - HTTP PUT
至/user
HTTP DELETE
至/user/{id}
例如,用于更新用户
而不是路线/user/UpdateUser
你应该做一个
HTTPPUT to /user/
有关REST检查的更多提示this。