2011-12-08 15 views
2

最近、Linqデータの展示に関連する問題で苦労しています。私の仕事は、3つのテーブルから情報を抽出することです。 1つはリソースのリストを含み、もう1つは関連サービスに関する情報を含みます。これらの2つのテーブルは接合テーブルと結合されています。 構造:Linq/C#接合部テーブルからの情報の取得

Resource Table: 
ResourceID (PK) 
Description 

ServiceResources Table (junction table): 
ServiceID(FK) 
Resource(FK) 

Service Table: 
ServiceID (PK) 
Description 

上記版は簡略化され、テーブルは、より拡張されています。 IListの

public class ResourceAndService 
    { 

     public string Resource 
     { 
      get; 
      set; 
     } 
     public string Service 
     { 
      get; 
      set; 
     }(...) 

そして、私は返す必要があり、LINQクエリからの情報でそれを埋めるためにしたい:私はすべての有用な情報が含まれています特別なオブジェクトを生成し :

そこで質問です

私は、このコマンドを実行しようとすると、
public IList<ResourceAndService> ReturnListOfServicesAndResources() 
    { 
     var dt = (from res in entities.Resource 
        from service in entities.Service 
       select 
       new ResourceAndService(){ 
         Resource = res.ResourceID, 
         Service= ser.ServiceID, 
      (...) 
       }).ToList(); 

     return dt; 
    } 

は残念ながら継続的に、と言って、デバッグウィンドウで警告がある:

「System.NullReferenceException」種類の最初の機会例外はRaportBrowser.DLL

に発生し、クエリが終了したことがありません。

このような問題が発生しましたか?

答えて

0

OK、NULLポインタ例外に関する問題は、別の場所で発生していました。
ところで、あなたの情報のために接合テーブルにアクセスする正しい方法は次のとおりです:

public IList<ResourceAndService> ReturnListOfServicesAndResources() 
{ 
    var dt = (from res in entities.Resource 
       from service in res.Service 
       select 
       new ResourceAndService() 
       { 
        Resource = res.ResourceID, 
        Service= ser.ServiceID, 
        (...) 
       }).ToList(); 
    return dt; 
} 
関連する問題