현재 사용자를 저장하는 방법이 있습니다. 이 응답 내 유일한 방법은 예외가 발생하는 것입니다 - 저장하는 동안방법 및 결과 저장
public PersonDto Save(PersonDto personDto)
그러나, 경우에, 나는 중복 사용자 이름, 또는 데이터에 몇 가지 다른 문제가 찾을 수 있습니다.
throw new Exception("Username exists");
'비즈니스 요구 사항 위반'에 예외를 사용해서는 안된다는 내용을 읽었습니다.
내 호출 메서드에 결과를 반환하는 더 좋은 방법이 있습니까? PersonDto로 돌아 가야 할뿐만 아니라 어떤 문제에 대한 정보도 필요합니다. 이 작업을 수행하는 일반적인 방법이나 모델이 있습니까? 어쩌면 Object SavedObject
(이 경우 PersonDto)과 string SaveResult
및 bool Success
과 같은 다른 속성을 포함하는 'SaveResult'객체를 반환 할 수 있습니까?
예외를 throw하는 대신 코드에 이와 같은 문제가 발생할 때 파일에 로깅하는 것이 좋습니다. 내 프로그램의 대부분에 대한 로그 파일이 있습니다. –
지침 (http://msdn.microsoft.com/en-us/library/ms229030.aspx)에는 다음과 같은 내용이 명시되어 있습니다. 예외를 throw하여 보고서 실행 오류가 발생하고 오류 코드가 반환되지 않습니다. Save 메서드가 저장할 수 없으면 실행 실패입니다. –
전달한 것과 동일한 PersonDto 인스턴스를 반환합니까? 그렇다면 요점은 무엇입니까? 발신자가 이미 그것에 대한 참조를 가지고 있습니다. 맞습니까? –