2011-04-29 6 views
1

データグリッドビューを照会していて、セルのいずれかに何もない(dbnull)場合はうまく動作します。どのようにこれを超えて来る?LINQエラータイプDBNull列

例外: 'DBNull'型に演算子 '='が定義されておらず、 'DBNull'と入力してください。

Dim query = From row As DataGridViewRow In DataGridView1.Rows _ 
      Where row.Cells(SelectedColumnIndex).Value = filter _ 
      And row.Visible = False _ 
      Select row Distinct 

答えて

2

.Equals()メソッドを使用して、nullの可能性がある値を比較します。例:

Dim query = From row As DataGridViewRow In DataGridView1.Rows _ 
     Where row.Cells(SelectedColumnIndex).Value.Equals(filter) _ 
     And !(row.Visible) _ 
     Select row Distinct 

または両方がnullの場合もあれば、あなたは比較するベースObject.Equals()メソッドを使用することができます。

Dim query = From row As DataGridViewRow In DataGridView1.Rows _ 
      Where Object.Equals(row.Cells(SelectedColumnIndex).Value, filter) _ 
      And !(row.Visible) _ 
      Select row Distinct 
+0

をuser704430 @:これは素晴らしい仕事を!ありがとうございました。 – TroyS

+0

私にも問題が解決しました! – Mohgeroth

関連する問題