c# dataTable itemarray returns '{}' - 널 값을 어떻게 테스트 할 수 있습니까?
문제
나는있다 DataTable resultSet;
- 널 필드를 확인하려고하지만 '{}'(빈 세트?) 객체를 다시 얻습니다. "{}"과 관련된 검색은 적절한 솔루션을 생성하지 않습니다.
이것은 "fk_id"필드가 null 일 때 예상대로 작동하지 않는 코드입니다.
if (resultSet.Rows[0].ItemArray[resultSet.Columns.IndexOf("fk_id")] == null)
{
//never reaches here
}
참고 : 대신 int 색인을 사용합니다 Columns.IndexOf()
문제가 아닙니다.
또한 "{}"에는 C#에 다른 이름이 있습니까?
해결책
데이터 세트에서 dbnull 열을 확인하려면 ISNULL 방법:
if (resultSet.Rows[0].IsNull("fk_id"))
당신의 비교 null
데이터 세트가 사용하지 않기 때문에 아마도 실패했을 것입니다 null
"데이터베이스 NULL"값을 나타내려면 dbnull.Value. 제시 한 방식으로 코드가 필요하다면 다음을 시도하십시오.
if (resultSet.Rows[0].ItemArray[resultSet.Columns.IndexOf("fk_id")] == DBNull.Value)
다른 팁
try
{
if (DT.Rows[0][0] != null)
{
//your code
}
}
catch
{
MessageBox.Show("AUTHANICATION FAILED.");
}
이용 해주세요:
dataTable.Select("FieldName is NULL")
FieldName 열에서 NULL 값이있는 DatArows를 제공합니다.
제휴하지 않습니다 StackOverflow