IsNull是RowData對(duì)象中用來判斷指定列是否為空值的。如果為空則返回True,不為空則返回False。主要有兩種用法
RowData.IsNull(colName)
RowData.IsNull(colName,DataRowVersion) 這里的DataRowVersion跟索引器中的DataRowVersion是一致的。
下面就看看使用的示例
Vb.Net |
Dim tbl As SmGrid=Proj.CurrentSmGrid If tbl Is Nothing Then Return Dim dr As RowData=tbl.CurrentRowData If dr Is Nothing Then Return '判斷當(dāng)前行是否有錯(cuò)誤信息,如果有 If dr.IsNull("ID") Then dr("ID")=Sys.NewGUID End If '如果是已經(jīng)修改過的列,可以通過行版本來訪問原本的數(shù)據(jù) If dr.IsNull("ID",DataRowVersion.Original) Then 'dr.OriginalIsNull("ID")和dr.IsNull("ID",DataRowVersion.Original)效果是一致的 Dim bnlIsNull As Boolean=dr.OriginalIsNull("ID") End If 'dr.OriginalValue("ID")和dr("ID",DataRowVersion.Original)效果也是一樣的 If dr.OriginalValue("ID")=dr("ID",DataRowVersion.Original) Then Proj.MsgDebug.Add("兩個(gè)返回值一樣") Else Proj.MsgDebug.Add("兩個(gè)返回值不一樣") End If |
C# |
SmGrid tbl = Proj.CurrentSmGrid; if (tbl == null) return; RowData dr = tbl.CurrentRowData; if (dr == null) return; // 判斷當(dāng)前行是否有錯(cuò)誤信息,如果有 if (dr.IsNull("ID")) dr["ID"] = Sys.NewGUID; // 如果是已經(jīng)修改過的列,可以通過行版本來訪問原本的數(shù)據(jù) if (dr.IsNull("ID", DataRowVersion.Original)) { // dr.OriginalIsNull("ID")和dr.IsNull("ID",DataRowVersion.Original)效果是一致的 bool bnlIsNull = dr.OriginalIsNull("ID"); } // dr.OriginalValue("ID")和dr("ID",DataRowVersion.Original)效果也是一樣的 if (dr.OriginalValue("ID") == dr("ID", DataRowVersion.Original)) Proj.MsgDebug.Add("兩個(gè)返回值一樣"); else Proj.MsgDebug.Add("兩個(gè)返回值不一樣"); |