У меня есть приведенный ниже код в попытке разрешить пользователю «пройти через» примечания к делу в БД, нажимая кнопку «Далее» или «Предыдущая» в WinForm. Он будет захватывать только первую записку.
Что я делаю не так?
В этот пост было внесено множество изменений, извиняюсь, но, следуя совету Джона Скита, я смог "исправить" то, что изначально было неправильно, но оно все равно не работает.
Нужно ли реструктурировать мой запрос, чтобы учесть текущую заметку? Если да, то как мне это сделать?
public static Guid NextCaseNoteID (int personID)
{
var context = new MatrixDataContext();
Guid nextNoteID = (from caseNote in context.tblCaseNotes
where caseNote.PersonID == personID
orderby caseNote.InsertDate
select caseNote.CaseNoteID ).Skip(1).FirstOrDefault();
return nextNoteID;
}
Это то, чем я закончил, спасибо всем, кто писал и следил за моей дурной мыслью ...
Кажется, это работает хорошо, хотя сейчас я пытаюсь доказать, что мне все еще нужен Skip (1) ....
Спасибо !!
для дальнейшего использования
public static Guid NextCaseNoteID (int personID, DateTime? insertDate)
{
var context = new MatrixDataContext();
Guid nextNoteID = (from caseNote in context.tblCaseNotes
where caseNote.PersonID == personID && caseNote.InsertDate > insertDate
orderby caseNote.InsertDate
select caseNote.CaseNoteID ).Skip(1).FirstOrDefault();
return nextNoteID;
}
public static Guid PreviousCaseNoteID(int personID, DateTime? insertDate)
{
var context = new MatrixDataContext();
Guid nextNoteID = (from caseNote in context.tblCaseNotes
where caseNote.PersonID == personID && caseNote.InsertDate < insertDate
orderby caseNote.InsertDate
select caseNote.CaseNoteID).Skip(1).FirstOrDefault();
return nextNoteID;
}