Example #1
0
        public IEnumerable <IConceptInfo> CreateNewConcepts(CodeTableInfo conceptInfo, IDslModel existingConcepts)
        {
            var codePropertyInfo = new ShortStringPropertyInfo
            {
                DataStructure = conceptInfo.Entity,
                Name          = "Code"
            };

            var autoCode = new AutoCodePropertyInfo {
                Property = codePropertyInfo
            };

            var namePropertyInfo = new ShortStringPropertyInfo
            {
                DataStructure = conceptInfo.Entity,
                Name          = "Name"
            };

            var requiredInfo = new RequiredPropertyInfo {
                Property = namePropertyInfo
            };

            return(new IConceptInfo[]
            {
                codePropertyInfo, autoCode, namePropertyInfo, requiredInfo
            });
        }
        public void ExtendDatabaseStructure(IConceptInfo conceptInfo, ICodeBuilder codeBuilder, out IEnumerable <Tuple <IConceptInfo, IConceptInfo> > createdDependencies)
        {
            AutoCodePropertyInfo info = (AutoCodePropertyInfo)conceptInfo;

            createdDependencies = null;

            if (AutoCodeTriggerDatabaseDefinition.IsSupported(info.Property.DataStructure))
            {
                codeBuilder.InsertCode(Sql.Format("AutoCodeDatabaseDefinition_ColumnDefinition",
                                                  info.Property.Name,
                                                  ShortStringPropertyInfo.MaxLength,
                                                  ForEachGroupColumnTag.Evaluate(info),
                                                  ForEachGroupValueTag.Evaluate(info)
                                                  ),
                                       AutoCodeTriggerDatabaseDefinition.ColumnsForAutoCodeSelectTag, info.Dependency_TriggerInfo);
            }
        }