This is my interface
public partial interface IPaymentMethod
{
void ProcessPayment(PaymentInfo paymentInfo, Customer customer,
Guid orderGuid, ref ProcessPaymentResult processPaymentResult);
void Capture(Order order, ref ProcessPaymentResult processPaymentResult);
void Refund(Order order, ref CancelPaymentResult cancelPaymentResult);
}
Je veux mettre en œuvre cette interface dans PaypalPaymentProcessor.cs et AuthorizeNet.csla mise en œuvre ci-dessous pour la mise en œuvre passerelle de paiement est correcte dans les services d'applications
public class PayPalExpressPaymentProcessor : IPaymentMethod
{
public void ProcessPayment(PaymentInfo paymentInfo, Customer customer, Guid orderGuid, ref ProcessPaymentResult processPaymentResult)
{
//Some code
}
void Capture(Order order, ref ProcessPaymentResult processPaymentResult)
{
// Some Code
}
void Refund(Order order, ref CancelPaymentResult cancelPaymentResult)
{
// Some Code
}
}
// Idem pour la classe AuthorizNetPaymentProcessor. Ces deux classes sont utilisées pour la passerelle de paiement. Mais je suis confus dois-je mettre au-dessus de l'interface et des classes App Service. Parce que ces deux classes ne sont pas aptes à faire partie du domaine et pas dans le service de domaine.
Est-il acceptable de les mettre dans App Service et de créer une classe PaymentService dans le service d'application d'où je les appelle. Puis-je faire cela?
PayPalExpressPaymentProcessor, cette classe parle à la passerelle paypal en appelant la fonction api de paypal avec les paramètres requis, même pour AuthorizePaymentProcessor, il parlera d'autoriser la passerelle de paiement.Mais je pensais où mettre ces classes dans l'application couche seul et créer un autre classe appelée PaymentService qui appellera fonction dans cette classe.Mais maintenant vous avez dit qu'il devrait être dans la couche INFRA. Donc, si nous voulons parler avec un système externe, alors les classes wrapper devraient être dans la couche infra et les fonctions d'appel de la couche de service App. Ai-je raison ? – kamal
DO App couche ne peut contenir que des classes de service, pas les classes wrapper. Je pensais mettre des classes wrapper dans un dossier dans la couche d'application parce que j'ai lu beaucoup d'endroits que la couche d'application parle au système externe. – kamal
voir ma deuxième réponse. Impossible de créer un commentaire Je ne sais pas pourquoi ... –