C# 啊,把服务层搞糊涂了

C# 啊,把服务层搞糊涂了,c#,.net,asp.net-mvc,C#,.net,Asp.net Mvc,服务层和存储库在纸上看起来很简单,但我弄糊涂了 这就是我感到困惑的地方。我的PayPal服务层有一个服务层,其中包含与我的PayPal内容相关的验证逻辑,以及连接到我的PayPal存储库并返回结果的方法(如果需要,还可以执行更多逻辑) 现在在我的登录页面上,我需要运行一些检查,以查看用户订阅是否已过期。所以我要检查一下我的PayPal表 现在我要把这个逻辑放在贝宝服务层吗?还是我的sigin服务层 我不确定哪一个是最合适的位置。我会让登录层称为PayPal层 听起来你在使用PayPal进行身份验

服务层和存储库在纸上看起来很简单,但我弄糊涂了

这就是我感到困惑的地方。我的PayPal服务层有一个服务层,其中包含与我的PayPal内容相关的验证逻辑,以及连接到我的PayPal存储库并返回结果的方法(如果需要,还可以执行更多逻辑)

现在在我的登录页面上,我需要运行一些检查,以查看用户订阅是否已过期。所以我要检查一下我的PayPal表

现在我要把这个逻辑放在贝宝服务层吗?还是我的sigin服务层


我不确定哪一个是最合适的位置。

我会让登录层称为PayPal层

听起来你在使用PayPal进行身份验证和支付。因此,您可能想考虑一下,您应该用另一种身份验证方法代替贝宝。p>
一般来说,层之间相互调用应该没有问题。

我会让登录层调用PayPal层

听起来你在使用PayPal进行身份验证和支付。因此,您可能想考虑一下,您应该用另一种身份验证方法代替贝宝。p>
一般来说,层之间相互调用应该没有问题。

如果service1使用service2,service2使用service1会怎么样。这是自找麻烦还是总体设计不好?嗯,这是一个很好的观点。我还想知道,仅仅是关于服务层调用另一个服务层。我不确定这是否是一个糟糕的设计,这要看情况而定。如果您仅通过接口访问服务,并且接口是独立的,那么这不是问题。听起来这些服务可能做得太多了。我会像@JeremyMcGee所说的那样研究责任分离(有单独的身份验证和支付)。如果service1使用service2,service2使用service1怎么办。这是自找麻烦还是总体设计不好?嗯,这是一个很好的观点。我还想知道,仅仅是关于服务层调用另一个服务层。我不确定这是否是一个糟糕的设计,这要看情况而定。如果您仅通过接口访问服务,并且接口是独立的,那么这不是问题。听起来这些服务可能做得太多了。我会像@JeremyMcGee所说的那样考虑责任分离(有单独的认证和支付)。