Web API,在哪里放置私有方法?

时间:2016-08-27 06:44:14

标签: asp.net asp.net-web-api asp.net-web-api2

所以前几天我想知道在哪里放置私有方法,在Web API中做一些脏工作。

我需要从JSON中提取某些东西,方法会完成工作并返回一些结果。

那么我该在哪里保留这些方法呢? 我是否需要编写一个单独的库(dll)? 或者只是在控制器中做这些东西?

2 个答案:

答案 0 :(得分:6)

我认为它没有一个答案 - 这取决于......

如果您认为将来可以从其他控制器重用此私有方法,最好有一个单独的类,如果您认为它可以从单独的模块(不仅仅是来自控制器)重用,则可以使用单独的类库项目答案。

但是如果你认为这个私有方法被设计为支持控制器的特定动作,你可以在控制器内写入,然后再考虑更多的参数,如单元可测试性或API的纤薄等。

答案 1 :(得分:1)

您应该尽可能地保持控制器的薄度。您可以将逻辑代码移动到服务包,例如JSONService类或JSONLib。 我经常使用以下布局:

controller/
lib/
service/
model/