MVC Web Api作为中间层服务

时间:2014-02-07 03:01:41

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

在我们最近的应用程序中,我们计划将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吗?任何建议都高度赞赏。感谢。

1 个答案:

答案 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