public static string Dump(this SqlDataRecord record)
        {
            var sb = new StringBuilder();

            sb.Append("{");
            for (var i = 0; i < record.FieldCount; i++)
            {
                if (i != 0)
                {
                    sb.Append(",");
                }
                var name      = record.GetName(i);
                var value     = record.GetValue(i);
                var fieldType = record.GetFieldType(i);
                if (fieldType == typeof(string))
                {
                    sb.Append($"{name}:'{value}'");
                }
                else
                {
                    sb.Append($"{name}:{value}");
                }
            }
            sb.Append("}");
            return(sb.ToString());
        }
        public void GetFieldType_ReturnMetaTypeClassType()
        {
            SqlMetaData[] metaData = new SqlMetaData[]
            {
                new SqlMetaData("col1", SqlDbType.NVarChar, 50)
            };

            SqlDataRecord record = new SqlDataRecord(metaData);

            Assert.Equal(typeof(string), record.GetFieldType(0));
        }
示例#3
0
 private SqlDataRecord SetDbRecord(SqlDataRecord record, object value, int index)
 {
     if (value.IsPrimitive())
     {
         var cValue = Convert.ChangeType(value, record.GetFieldType(index));
         record.SetValue(index, cValue);
     }
     else
     {
         record.SetValue(index, value.ToString());
     }
     return(record);
 }