2016-08-27 110 views
0

所以我很想知道在哪里可以放置私有方法,在Web API中执行一些肮脏的工作。Web API,在哪里放私人方法?

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

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

+0

您可以在相同的控制器中编写您的方法或创建其他控制器,因为您需要它并取决于它的用法。 –

回答

3

我不认为它可以有一个单一的答案 - 这取决于...

如果你觉得这个私有方法,可以从一些其他的控制器在未来可重复使用,最好有一个单独的类,如果你认为它可以从单独的模块(而不仅仅是从控制器)重用,一个单独的类库项目可以作为答案。

但是如果你认为这个私有方法是为了支持控制器的特定动作而设计的,那么你可以在控制器内写入,然后再作出任何决定,再考虑几个参数,比如API的单元可测试性或者细长度等。

0

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

controller/ 
lib/ 
service/ 
model/