首页 > 解决方案 > 如何在asp.net mvc中通过多个不同的名称调用控制器的方法?

问题描述

我们应该写一个api提供客户信息的,url应该是这样的

https://----.com/api/CustomerInfo/GetInfo?fromDate=1111&toDate=2222,.....

但不是GetInfo,客户应该调用客户帐号,如果它是一个有效的帐户,则应该返回帐户信息,例如客户应该调用这样的东西

 https://----.com/api/CustomerInfo/98587445895?fromDate=1111&toDate=2222,.....

98587445895客户账户在哪里。
我应该如何让它以这种方式工作?

标签: c#asp.net-mvc

解决方案


您应该按照 CM 和 Hogan 给出的建议隐藏操作名称。

对于什么问题,应该在哪里验证您的帐号,这取决于您的系统架构。例如,如果要将路由参数绑定到 int,则第一级格式验证应由 ASP.NET Web API 绑定程序执行。这是一个非常简单的验证,因为只有当帐号不是 int 或超出数据类型的限制时才会失败。对于不依赖于数据类型格式的更强大的验证,您可以有一个服务层,在其中检查该帐号是否有效,同时考虑到您的自定义规则。

我希望我的回答会有所帮助。如果您需要更多信息,请与我们联系。


推荐阅读