Inheritance: ColumnAttribute
Example #1
0
        private static void AddVersionColumn(Type type, ClassMap mapping, XElement e)
        {
            var version    = new VersionAttribute();
            var memberName = e.GetAttributeValue <string>("Member");
            var member     = type.GetMember(memberName).FirstOrDefault();

            if (member == null)
            {
                throw new MappingException(string.Format("Invalid member:'{0}' in type '{1}'!", memberName, type.FullName));
            }
            var storage = e.GetAttributeValue <string>("Storage");

            if (storage.HasValue())
            {
                version.Storage = storage;
            }

            version.Name       = e.GetAttributeValue <string>("Name");
            version.IsNullable = !e.GetAttributeValue <bool>("Required");
            version.Length     = e.GetAttributeValue <int>("Length");
            var dbType = e.GetAttributeValue <string>("DbType");

            if (dbType.HasValue())
            {
                version.DbType = (DBType)Enum.Parse(typeof(DBType), dbType);
            }
            mapping.members.Add(member, version);
        }