2014-11-02 3 views
0

asp net에서 두 개의 다른 테이블 셀을 비교해야합니다. 하나 개의 테이블은 결과를 포함하고 사용자가 테이블에 roundid 결과 목록 중 하나와 일치하는 경우 테이블이 그 라운드의 게임의 값을 비교하도록asp.net에서 두 데이터베이스 테이블 필드를 비교하는 방법

round id = 1 | 
game1 = 25 | 
game2 = 25 | 
game2 = 10 | 

round id = 2 | 
game1 = 25 | 
game2 = 0 | 
game3 = 0 | 

the user table goes as follows : 

username = Mike | 
round id = 2| 
game1 = 25 | 
game2 = 10 | 
game3 = 0| 

내가 원하는 다음과 같이 간다. 따라서 2 라운드에서 game1이 results : totalscore =+ 1; 의 game1과 일치하면 아무 것도하지 않고 아무 것도 추가하지 않습니다! 마지막에 라벨이나 텍스트 상자에 총점을 표시 asp.net에서 이것을하는 방법? 관계없이 설계 패러다임의 관점 (MVC, MVP, MVVM 등)에서 응용 프로그램을 구성하는 방법의 모든

+0

귀하의 노력을 게시 –

+0

나는 sqldatasources @ SagarPudi로 엉망이었습니다. 그래서 정말 뒤에 코드가 없었습니다. 그냥 방법을 알아야하고 그 방법에 대한 코드를 검색 할 수 있습니다. – justCause

답변

0

먼저해야 항상 데이터이벤트가 아니라 UI 요소보다는 거래. 즉, UI 요소 이 데이터를으로 표시하고 UI 이벤트 은 이벤트를 통해 데이터 세트에 바인딩되므로 UI ​​요소는 데이터 집합 수준에서 추상에서 진행중인 작업을 간단히 반영합니다.

둘째, 소위 "사용자"테이블은 사용자 테이블이 아닙니다. 그것은 사용자와 라운드의 조합 인 것 같습니다. 그래서 AppUserRound 테이블이라고해야합니다.

따라서, IList<Result> results에는 결과가 포함되어 있고 IList<AppUserRound> userRounds에는 사용자의 순찰이 포함되어 있다고 가정 해 보겠습니다. LINQ를을 RoundID에 의해 서로 다음 테이블을 조인 사용 "조인"테이블을 형성 :

var query = from ur in userRounds 
      join r in results on r.RoundID = ur.RoundID 
      select new { ur.Usernqame, r.RoundID, r.Game1, r.Game2, r.Game3 }; 

을 분명히 특정 데이터 구조가 다를 수 있지만,이 조인 된 테이블을 사용 할 수 있습니다, 당신은 포함 된 목록을 표시 할 수 있습니다 두 표의 정보

관련 문제