C#에서 null 값을 문자열로 변환
System.DBNull 개체를 System.String으로 변환하려고 하면 일반적으로 데이터베이스에서 데이터를 검색할 때 발생하는 오류가 발생합니다. 원래 코드에서는 DBNull 값을 문자열로 직접 캐스팅하려고 시도하여 예외가 발생했습니다.
이 문제를 해결하기 위해 문자열로 변환하기 전에 DBNull을 확인하도록 코드를 수정했습니다.
<code class="language-csharp">if (accountNumber is DBNull) { return string.Empty; } else { return accountNumber.ToString(); }</code>
그러나 일반 함수를 사용하는 더 우아한 솔루션이 있습니다.
<code class="language-csharp">return ConvertFromDBVal<string>(accountNumber);</code>
함수는 다음과 같이 정의됩니다.
<code class="language-csharp">public static T ConvertFromDBVal<T>(object obj) { if (obj == null || obj == DBNull.Value) { return default(T); // 返回该类型的默认值 } else { return (T)obj; } }</code>
이 함수는 DBNull 값을 원하는 유형으로 변환하는 작업을 우아하게 처리하고 필요한 경우 해당 유형의 기본값을 반환합니다.
위 내용은 C#에서 DBNULL 값을 문자열에 안전하게 캐스팅하는 방법?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!