본문 바로가기
C#

Dataset Extension 데이터 존재 유무 체크, 값 등등

by 캡틴노랑이 2015. 8. 21.
반응형
Dataset과 과련한 확장 메서드
/// 
    /// DataRow 확장 객체
    /// 
    public static class DataRowExtention
    {
        /// 
        /// 필드의 유무 확인
        /// 
        /// 대상 DataRow
        /// 대상 필드명
        /// 필드 유무
        public static bool Exists(this System.Data.DataRow TargetRow, string FieldName)
        {
            return TargetRow.Table.Columns.Contains(FieldName);
        }
        /// 
        /// 해당 필드를 문자열 값으로 변환
        /// 
        /// 대상 DataRow
        /// 대상 필드명
        /// Trim 비활성화 여부
        /// 문자열 값
        public static string ToString(this System.Data.DataRow TargetRow, string FieldName, bool TrimDiable = false)
        {
            if (TargetRow.IsNull(FieldName))
                return null;
            if (TrimDiable)
                return TargetRow[FieldName].ToString();
            else
                return TargetRow[FieldName].ToString().Trim();
        }
        /// 
        /// 해당 필드를 숫자 값으로 변환
        /// 
        /// 대상 DataRow
        /// 대상 필드명
        /// 숫자 값
        public static int? ToNullableInteger(this System.Data.DataRow TargetRow, string FieldName)
        {
            if (TargetRow.IsNull(FieldName))
                return null;
            return int.Parse(TargetRow[FieldName].ToString().Trim());
        }
        /// 
        /// 해당 필드를 숫자 값으로 변환
        /// 
        /// 대상 DataRow
        /// 대상 필드명
        /// 숫자 값
        public static int ToInteger(this System.Data.DataRow TargetRow, string FieldName)
        {
            if (TargetRow.IsNull(FieldName))
                return 0;
            return int.Parse(TargetRow[FieldName].ToString().Trim());
        }
        /// 
        /// 해당 필드를 bool값으로 변환 (null 가능)
        /// 
        /// 대상 DataRow
        /// 대상 필드명
        /// bool 값 (null 가능)
        public static bool? ToNullableBoolean(this System.Data.DataRow TargetRow, string FieldName)
        {
            if (TargetRow.IsNull(FieldName))
                return null;
            string value = TargetRow[FieldName].ToString().Trim();
            return value.ToBoolean();
        }
        /// 
        /// 해당 필드를 bool값으로 변환
        /// 
        /// 대상 DataRow
        /// 대상 필드명
        /// bool 값
        public static bool ToBoolean(this System.Data.DataRow TargetRow, string FieldName)
        {
            if (TargetRow.IsNull(FieldName))
                return false;
            string value = TargetRow[FieldName].ToString().Trim();
            return value.ToBoolean();
        }
        /// 
        /// 해당 필드를 숫자 값으로 변환
        /// 
        /// 대상 DataRow
        /// 대상 필드명
        /// 숫자 값
        public static char ToChar(this System.Data.DataRow TargetRow, string FieldName)
        {
            if (TargetRow.IsNull(FieldName))
                return ' ';
            string value = TargetRow[FieldName].ToString().Trim();
            if (value.IsNullOrEmpty())
                return ' ';
            else
                return value[0];
        }
    }
 


반응형

'C#' 카테고리의 다른 글

Dictionary 관련 유용코드  (0) 2015.08.21
c# Extention Code 확장 메서드 모음.  (0) 2015.08.21
JSON array(or list) in C#  (0) 2015.08.21
DataSet to List  (0) 2015.08.21
c# 참고할 만한 사이트 목록  (0) 2015.08.21

댓글