2011-09-02 2 views
0

나는 급여와 관련된 프로젝트를 수행하고 있습니다. 여기에는 runned 된 각 급여에 대해 payperiodnumbers이 있습니다. 그리드 뷰에 모든 급여 명세서를 해당 급여 기간 번호와 함께 표시합니다. 시퀀스의 누락 된 요소를 확인하는 방법

내가 그리드에서

enter image description here

이제 그리드에 바인더 제본 할 때 내가 1을 선택하고 삭제를 클릭 난 당신이 최대를 삭제해야한다는 오류 메시지가 표시하려는 경우 내가 다음과 같은 결과를 얻을 수 있다고 가정 먼저 지불 기간.

마치 최대 지불 기간을 7으로 설정하고 사용자가 1,2,3,4,5,6을 선택하고 동일한 오류를 표시하고 싶습니다. 나는 arraylist에 선택된 ID's을 저장하고있다. 그래서 어느 누구도 지정한대로 내 상태를 검사 할 수 없다. 쿼리를 사용하여 최대 payperiodid를 얻을 수 있지만 나머지 코드는 수행하고 싶습니다.

여기서는 2.0을 사용하고 있으므로 여기에 LINQ을 사용하지 않아도됩니다. Azodious가 최대 수 7 경우 내가 일을 할 몇 가지 조건이 몇 가지되지

을 표시하고 그리고 난 1,5,7을 선택하면 내가 오류 메시지를 표시하고 싶습니다 지적 어느 날

를 할 수 있습니다.

내가 5,6,7을 선택하면 삭제해야합니다. 이 같은

+2

최대 급여 기간 번호 7'와 사용자가'선택'의 경우 발생해야하는 4, 5, 7' ? 오류 메시지가 표시되고 행이 삭제되지 않거나 최대 지불 기간 number = 7 인 행이 삭제 된 후에 오류 메시지가 표시되어야합니까? – Azodious

+0

아니요 그 선택에 대해서도 오류를 제기하고 싶습니다. 모든 순서가 올바르다면 내가 삭제해야합니다 – Vivekh

답변

0

뭔가 :

selectedNumbers.Sort(); 
selectedNumbers.Reverse(); 

int maxPeriodNumber = 5; // This you know 
int lastValue = (int)selectedNumbers[0]; 

if (lastValue < maxPeriodNumber) 
{ 
    // Highest selected number is smaller than required, warn user or throw exception 
    return; 
} 

foreach (int val in selectedNumbers) 
{ 
    if (val < (lastValue - 1)) 
    { 
     // There is a gap in the numbering, warn user or throw exception 
     return; 
    } 

    lastValue = val; 
} 

// When you end up here, everything is ok and you can delete the items whose numbers are in the list 
+0

편집 내용을 확인하고 필요한만큼 줄 수 있습니까 – Vivekh

+0

답변이 업데이트되었습니다. – CodeCaster

+0

'selectedNumbers' 무엇을 선언해야합니까? – Vivekh

0

간단한 논리가 누락 된 숫자

에게 표시
ArrayList a = new ArrayList(); 
List<int> lst = new List<int>(); 
lst.Add(1); 
lst.Add(3); 
lst.Add(5); 
int fst = (int)lst[0]; 
int last = 0; 
for (int i = 0; i < lst.Count; i++) 
{ 
    last = (int)lst[i]; 
} 
for (int k = fst; k <= last; k++) 
{ 
if (k == fst | k == last) 
    { 
    } 
else 
{ 
    a.Add(k); 
    a.Add(" "); 
} 
} 
    Label1.Text = "Missing Numbers are" + " " + System.String.Concat(a.ToArray()); 
관련 문제