Ejemplo n.º 1
0
        private void BuildSimpleProperty(EdmProperty property, string keyName)
        {
            var typeUsage = Pass.Code.Escape(property.TypeUsage);
            var maxLength = Pass.Code.Tools.GetPropertyMaxLength(property);
            var requiresRequiredAttribute  = !Pass.Code.Tools.IsNullable(property) && !Pass.Code.Tools.IsValueType(property.TypeUsage.EdmType);
            var requiresMaxLengthAttribute = maxLength > 0;

            if (typeUsage.StartsWith("System.Data.Spatial."))
            {
                typeUsage = typeUsage.Replace("System.Data.Spatial.", "System.Data.Entity.Spatial.");
            }

            var propertyName = Pass.Code.Escape(property);

            if (propertyName == keyName)
            {
                propertyName = Settings.CommonKey;
            }

            if (requiresRequiredAttribute)
            {
                Add(Tab(2), "[Required]");
            }

            if (requiresMaxLengthAttribute)
            {
                Add(Tab(2), string.Format("[MaxLength({0})]", maxLength));
            }

            Add(Tab(2), string.Format("{0} {1} {2} {{ get; set; }}", Accessibility.ForProperty(property), typeUsage, propertyName), NewLine());
        }
        private void BuildSimpleProperty(EdmProperty property, string keyName)
        {
            var typeUsage = Pass.Code.Escape(property.TypeUsage);

            if (typeUsage.StartsWith("System.Data.Spatial."))
            {
                typeUsage = typeUsage.Replace("System.Data.Spatial.", "System.Data.Entity.Spatial.");
            }

            var propertyName = Pass.Code.Escape(property);

            if (propertyName == keyName)
            {
                propertyName = Settings.CommonKey;
            }

            if (Settings.IsTracked)
            {
                Add(Tab(2), string.Format("[Tracked(\"{0}\")]", propertyName.ToSeparatedWords()));
            }

            Add(Tab(2), string.Format("{0} {1} {2} {{ get; set; }}", Accessibility.ForProperty(property), typeUsage, propertyName), NewLine());
        }