Пример #1
0
        static string GetType(ValueDb item)
        {
            if (item.IsNumber())
            {
                return(DbNames.TNumeric);
            }
            if (item.IsVarChar())
            {
                return(DbNames.TString);
            }
            if (item.IsDateTime())
            {
                return(DbNames.TDateTime);
            }
            if (item.IsBlob())
            {
                return(DbNames.TBlob);
            }

            throw new Exception($"{item.ValueType} is unsupported.");
        }
Пример #2
0
        IEnumerable <ValueDb> ReadValues(DbDataReader reader, string objectId)
        {
            while (reader.Read())
            {
                ValueDb.ValueTypeE valueType;
                if (Enum.TryParse(GetStringValue(reader, DbNames.FValueType), out valueType))
                {
                    var item = new ValueDb()
                    {
                        Id        = GetStringValue(reader, DbNames.FId),
                        ObjectId  = objectId,
                        ValueType = valueType
                    };

                    var ordinal = reader.GetOrdinal(DbNames.FValue);

                    item.Value = ReadValue(reader, ordinal, valueType);

                    yield return(item);
                }
            }
        }