コード例 #1
0
        public override void Generate(object codeObject, Entity entity)
        {
            var propNode = (CodeMemberProperty) codeObject;
            var property = (GenericProperty) entity;

            var getPropertyValueMethod = new CodeMethodReferenceExpression(null, "GetValue", propNode.Type);
            var getPropertyValueCall = new CodeMethodInvokeExpression(getPropertyValueMethod, new CodePrimitiveExpression(property.Alias));
            propNode.GetStatements.Add(new CodeMethodReturnStatement(getPropertyValueCall));
        }
コード例 #2
0
        public override void Generate(object codeObject, Entity entity)
        {
            var type = (CodeTypeMember)codeObject;

            var attribute = AddAttribute(type, attributeName);

            if (memberGenerators != null)
                foreach(var generator in memberGenerators)
                    generator.Generate(attribute, entity);
        }
コード例 #3
0
        public override void Generate(object codeObject, Entity entity)
        {
            var type = (CodeTypeDeclaration)codeObject;
            var contentType = (ContentType) entity;
            var info = contentType.Info;

            AddFieldIfNotEmpty(type, "icon", info.Icon);
            AddFieldIfNotEmpty(type, "thumbnail", info.Thumbnail);
            AddFieldIfTrue(type, "allowAtRoot", info.AllowAtRoot);
        }
コード例 #4
0
        public override void Generate(object codeObject, Entity entity)
        {
            base.Generate(codeObject, entity);

            var attribute = (CodeAttributeDeclaration)codeObject;
            var docType = (DocumentType)entity;
            var info = (DocumentTypeInfo)docType.Info;

            AddAttributeArgumentIfValue(attribute, "DefaultTemplate", info.DefaultTemplate);

            var allowedTemplates = 
                info.AllowedTemplates
                    .NonNullOrWhiteSpace()
                    .AsPrimitiveExpressions();
            var arrayCreateExpression = new CodeArrayCreateExpression("String", allowedTemplates);
            if (allowedTemplates.Any())
                AddAttributeArgument(attribute, "AllowedTemplates", arrayCreateExpression);
        }
コード例 #5
0
 public override void Generate(object codeObject, Entity entity)
 {
     var type = (CodeTypeDeclaration) codeObject;
     var ctor = new CodeConstructor
     {
         Attributes = MemberAttributes.Public
     };
     ctor.Parameters.Add(
         new CodeParameterDeclarationExpression(
             "Umbraco.Core.Models.IPublishedContent",
             "content"
             )
         );
     ctor.BaseConstructorArgs.Add(
         new CodeVariableReferenceExpression("content")
         );
     type.Members.Add(ctor);
 }
コード例 #6
0
 public override void Generate(CodeObject codeObject, Entity entity)
 {
     var ns = (CodeNamespace) codeObject;
     AddImports(ns);
 }
コード例 #7
0
 public override void Generate(CodeObject codeObject, Entity entity)
 {
     CodeObjects.Add(codeObject);
     Called = true;
 }