웹/UI, 서비스, 리포지토리, 공용 및 다음과 같은 레이어가이 경우 중요하지 않습니다.데이터 조회 용 상수에 대한 질문
사이트에 생성 된 모든 이메일 데이터를 보관하는 이메일 테이블이 있습니다. 이메일 테이블에서 어떤 이메일을 호출해야하는지 추적하는 EmailType 테이블도 있습니다.
제 이메일 서비스에는 다음과 같은 방법이 있습니다.
public string SendPurchaseConfirmationEmail(string email, string firstName, string dealName) {
Email email = EmailRepository.GetByCurrentByType(EmailType.PurchaseEmail.GetStringValue());
variables = createVariablesList();
SendEmail(email.ListId, email.externalEmailId, variables);
}
EmailType은 GUID이고 내 저장소에 저장되는 값 속성을 가져 오는 확장자가있는 unum입니다. EmailType 테이블은 테스트 이메일을 생성하는 admin에서 훌륭하게 작동하지만 실제 웹 레이어의 경우 서비스 호출에 저장소의 하드 코딩 된 값이 필요합니다.
제 질문은이 방법을 사용하는 것이 가장 좋고 권장되는 방법입니까, 아니면이 방법을 좀 더 동적으로 만들 수 있습니까? 이 부분에 대해 싫어하는 부분은 웹 레이어가 저장소에 접속해야하므로 모든 서비스에 대한 메소드가 필요하다는 것입니다.
코드 분리가 문제가 될 경우 서비스 레이어의 열거 형 배치가 올바르지 않습니다.
감사에서 "웹 계층"호출 (뷰에서 호출 서비스)와 관련하여이
public string SendConfirmationEmail(EmailType selectedType, string email, string firstName, string dealName) {
Email email = EmailRepository.GetByCurrentByType(selectedType);
variables = createVariablesList();
SendEmail(email.ListId, email.externalEmailId, variables);
}
에 서비스 방법은, 당신이 뜻을 정확히 모르는
"웹 레이어"란 무엇입니까? – mare
죄송합니다. UI 또는 웹 레이어는 실제 aspx 페이지/뷰 및 컨트롤러이므로 MVC를 사용하고 있습니다. –