2012-04-07 13 views
0

Entity Framework 4を介してアクセスする2つのSQL Serverテーブルがあります。これらのテーブルは、結合の依存側の0〜1行の単一キーで結合されています。ここで私のlinqクエリです。の不在を検出する方法はあり従属テーブルの欠落行を処理する方法

type.Reporting_Type.MRef_Status, 
type.Reporting_Type.Exists_In_Drop)); 

:Reporting_Typeがゼロ行を返す場合

 var typeDtoList = from type in typeList 
         select (new DxStudioTypeDto(parent, 
                isChildrenLoadOnDemand, 
                businessFacade, 
                server, 
                database, 
                type.typeGuid, 
                type.typeName, 
                type.writerName, 
                type.managerName, 
                type.Reporting_Type.MRef_Status, 
                type.Reporting_Type.Exists_In_Drop)); 

明らかに、LINQ式はDxStudioTypeDtoコンストラクタの最後の二つのパラメータにnull参照の例外がスローされますReporting_Type行を作成し、デフォルトの文字列に置き換えますか? DxStudioTypeDtoは不変型なので、新しいオブジェクトをインスタンス化するときにはすべてのパラメータが必要です。この状況のた​​めの他の戦略?

答えて

0

これを試しましたか?私が知っている

((type.Reporting_Type == null) ? "some default value" : type.Reporting_Type.MRef_Status) 

は時々EFエンジンは、この種のもののための「プロバイダは、この操作をサポートしていません」を返すが、それは試してみる価値はあります。

+0

場合によっては、最も簡単なものが最も見難いことがあります。正しい方向に押してくれてありがとう。うまくできた。 – JimBoone

関連する問題