3 개의 테이블 (Categories, Articles 및 ArticleCategories)이 있습니다. ArticleCategories이 결합 된 PK와의 concists 있습니다C# subsonic 2.2 : 다 대다 관계 및 페이지 매김 문제
- 은 articleID를 (PK, FK, int)를
- 카테고리 ID (PK, FK, int)를 내가 아음속 페이징을 사용하고 지금
방법 나는 아주 이상한 행동을하고있다. 그것은 두 배의 레코드 양을 반환합니다 (2 PK 's?). 문제는 페이징을 완전히 제거하거나 ArticleCategoryID라는 PK 필드를 추가하여 해결됩니다.
SubSonic.Query qry = new SubSonic.Query(DAL.ArticleCategory.Schema);
qry.AddWhere(DAL.ArticleCategory.Columns.CategoryID, filterid);
//Pagesize
qry.PageSize = Classes.Settings.PageSizes.GetAdminPageSize();
//Pageindex
if (pageindex > 0)
qry.PageIndex = pageindex;
else
qry.PageIndex = 1;
위의 코드는 다른 모든 테이블에 적용되지만 다 대다 관계에서는 실패합니다. 나는 여분의 (그리고 싱글) PK 필드를 추가하는 것에 의지 할 수 있지만 그것이 옳다고 생각하지는 않는다.
어쩌면 내가
이 당신의 시간 동안 당신은 또한에 롭 Conery의 대답을 읽을 수 있습니다
Marapet에게 도움을 주신 데 대해 다시 한번 감사 드리며, 이제 막 Subsonic과 계속해서 다시는 돌아 보지 못했던 것 같습니다. 테이블에 PK 컬럼을 추가하여 문제를 해결할 것입니다. SQLQuery에 대한 제안을 보내 주셔서 감사합니다. 나는 이것을 체크하고 아마도 다른 주제에 대해서도 좀 더 읽을 것입니다. 다시 한번 감사드립니다 m8! – Mark
오신 것을 환영합니다. 기꺼이 도와 드리겠습니다. – marapet