3

1- linq to sql を使用してデータベース テーブルをクエリします。
2- 実際のテーブルでは、Phone Country Code、Phone Number、Phone Extension を異なる列に格納しています。
3- データを取得したら、Phone が Phone Country Code、Phone Number、Phone Extension の連結と等しくなるようにする必要があります。
4- 一部のレコードでは、これら 3 つの列のいずれかに null 値が含まれる場合があります。
5- 1 つの列が null の場合、連結全体が null になります。

from s in test
select new{
          Phone = s.PhoneCountryCode + s.PhoneNumber + s.PhoneExtension
}

6- 以下を試しましたが、うまくいきませんでした。それでも null が返されます。

from s in test
select new{
          Phone = s.PhoneCountryCode == null ? "" : s.PhoneCountryCode + s.PhoneNumber       == null ? "" : s.PhoneNumber + s.PhoneExtension == null ? "" : s.PhoneExtension
} 
4

1 に答える 1

5

??演算子は次のように使用できます。

from s in test
select new
{
    Phone = (s.PhoneCountryCode ?? "") + (s.PhoneNumber ?? "") + (s.PhoneExtension ?? "")
}
于 2013-03-28T13:47:28.417 に答える