AttributeCollection LoadAttributes() { var props = MetaModel.GetTypeDescriptor(Table.EntityType).GetProperties(); AttributeCollection reflected; int propsCount = props == null ? 0 : props.Count; if (propsCount == 0) { reflected = AttributeCollection.Empty; } else { var property = props.Find(Name, true); if (property == null) { reflected = AttributeCollection.Empty; } else { reflected = property.Attributes; } } if (!Provider.Nullable && reflected.OfType <RequiredAttribute> ().Count() == 0) { reflected = AttributeCollection.FromExisting(reflected, new Attribute[] { new RequiredAttribute() }); } return(reflected); }