디버깅중인 응용 프로그램의 기능으로 사용자가 제품에 대한 리뷰를 만들 수 있습니다. 입력 양식에는 기존 검토 횟수를 기반으로 자동 채우기되는 ReviewId 필드가 있으며 '1'씩 순차적으로 증가합니다. 기존 제품의 경우에는 정상적으로 작동합니다.새 항목의 순차 값 자동 할당 문제
새 제품에는 이전 검토가 없으므로 사용자가 도메인 서비스를 만들려고하면 응용 프로그램에서 도메인 서비스 예외가 발생합니다. 마지막 리뷰 ID를 찾는 코드가 있기 때문에 이것이 알 수 있습니다.하지만 새 제품이므로 오류가 발생하지 않습니다. 난 단지 그것을 해결하는 데 필요한 코드를 알아낼 수 없습니다 (PHP 프로그래머가 C#/Silverlight에서 작업). 데이터베이스를 수정할 수있는 권한이 없으므로 프로그래밍 방식으로이 작업을 수행하려고합니다. 여기
내가 무엇을 가지고 :AddReviewChildWindow.cs -
공공 무효 GetNewReviewNumber()
{ReviewsDomainContext 검토 = 새로운 ReviewsDomainContext을();}
InvokeOperation count = review.GetLastReviewNumber (ProductId);
count.Completed + = 새 System.EventHandler (GetNewReviewNumberCompleted);
그리고 DomainServices.cs -
[설명 (". 제품과 관련된 마지막 검토의 ID 번호를 반환합니다")]
[호출]
공개 System.Int32 GetLastReviewNumber (nullable productId)
{}
int retVal = 0;
// 제품 리뷰 목록을 가져옵니다.
IQueryable reviews = GetProductReviews (productId);
// 마지막 것을 가져 오십시오.
리뷰 검토 = 리뷰. 마지막();
// 새 것으로 지정하십시오.
retVal = review.ReviewNumber;
retVal ++; // 하나를 추가하십시오.
return retVal;
이 C 번호를 아는 사람을위한 쉬운해야, 내가 생각 -하지만 난 그냥 그것을 찾을 수 없습니다. 감사! 내가 제대로 귀하의 요구 사항을 이해한다면
진드기 오프 주제,하지만 ReviewId 양식 필드는 사운드 디자인이 아니다. 사용자 A가 양식을 열고 ReviewId = 2를 얻은 다음 사용자 B가 양식을 열고 ReviewId = 2를 얻은 다음 두 항목을 모두 제출한다고 가정 해보십시오. 검토를 삽입하기 직전에 ID를 생성해야합니다. – Misko