그래서 ... 이메일을 생성 할 비즈니스 개체/관리자가 있습니다.관리 레이어의 MVC 경로에서 URL 생성 ...
이 이메일은
그러나 내 비즈니스 오브젝트는 것입니다 ... 웹 사이트에 다양한 콘텐츠에 대한 링크를 포함 ... 따라서 MVC 라우팅에 대해 이해할 필요가 ... 또는 적어도 웹 사이트의 URL을 생성하는 방법을합니다 RequestContext 등에 대한 액세스 권한이 없으며 전자 메일 생성이 웹 사이트에 대한 웹 요청의 결과 일 필요는 없습니다. (전자 메일을 생성하는 백그라운드 스레드에서 실행되는 디스패처가 있습니다.)요청에 대한 액세스 권한없이 내 URL을 생성하므로 URLHelper를 사용할 수 없습니다.
생각하나요?
글쎄 .. 인터페이스 내에서 내 구현을 래핑하는 동안이 문제가 없어야합니다. 예를 들어 IRouteHelper? 어쨌든 ... "스키마를 정의하고 라우팅 및 비즈니스 로직을 인식하는 것을 선호합니다"라는 의미가 확실하지 않습니다 - 스키마 기반 개발을 사용하여 라우팅을 정의하는 방법은 무엇입니까? – iasksillyquestions
내가 HttpRequest를 조롱하는 것이 좋습니다? – iasksillyquestions
이 방법을 사용하면 IRouteHelper에 어떤 문제도 나타나지 않습니다. 다른 구현 방법을 제안했다는 점을 생각하면 같은 질문 (내가 선호하는 것)에 직면하면 선택하게 될 것입니다. 스키마 란 URL 스키마 (예 : 제품이 Invetory/Product/11654에 있어야 함을 사양으로 지정 함)를 의미합니다. 조롱은 실행 여부를 확인하는 테스트 복식의 일종입니다. 물론 나는 이것을 제안하지 않는다. 내가 제안하는 것은 UrlHelper의 의존성을 구현하는 것이다. 사실 RouteCollection의 래퍼 인 UrlHelper는 필요하지 않습니다. –