예제 #1
0
        private void TestBuildUsingAnnotations(AttributeSetBuilder <CreateAttributeSet, CreateAttribute, CreateAttributeValue, CreateAttributeUse> attributeSetBuilder, out IList <CreateAttribute> attrs, out IList <CreateAttributeValue> attrVals, out IList <CreateAttributeSet> attrSets, out IList <CreateAttributeUse> attrUses)
        {
            attributeSetBuilder.BuildAttributeSetsFromEntityType(typeof(AttributeSetInstanceTestClass1), out attrSets, out attrs, out attrVals, out attrUses);

            Assert.AreEqual(3, attrSets.Count);//System.Console.WriteLine(attrSets);
            System.Console.WriteLine(attrs);
            System.Console.WriteLine(attrVals);
            System.Console.WriteLine(attrUses);

            Save(attrs, attrSets);
        }
예제 #2
0
        private void TestBuildUsingEnum(AttributeSetBuilder <CreateAttributeSet, CreateAttribute, CreateAttributeValue, CreateAttributeUse> attributeSetBuilder, ref IList <CreateAttribute> attrs, ref IList <CreateAttributeValue> attrVals, ref IList <CreateAttributeSet> attrSets, ref IList <CreateAttributeUse> attrUses)
        {
            attributeSetBuilder.BuildAttributeSetsFromEntityType(typeof(AttributeSetInstanceTestClass4), out attrSets, out attrs, out attrVals, out attrUses);

            Assert.AreEqual(1, attrSets.Count); //System.Console.WriteLine(attrSets);
            Assert.AreEqual(1, attrs.Count);    //System.Console.WriteLine(attrs);
            Assert.IsTrue(attrs[0].IsList);
            Assert.AreEqual((typeof(int)).Name, attrs[0].AttributeValueType);
            Assert.AreEqual(7, attrVals.Count); //System.Console.WriteLine(attrVals);

            Save(attrs, attrSets);
        }
예제 #3
0
        public static void CreateDefaultAttributeSets()
        {
            attributeApplicationService    = ApplicationContext.Current["attributeApplicationService"] as IAttributeApplicationService;
            attributeSetApplicationService = ApplicationContext.Current["attributeSetApplicationService"] as IAttributeSetApplicationService;

            var attributeSetBuilder = new AttributeSetBuilder <CreateAttributeSet, CreateAttribute, CreateAttributeValue, CreateAttributeUse>(new IdGenerator());

            IList <CreateAttribute>      attrs;
            IList <CreateAttributeValue> attrVals;
            IList <CreateAttributeSet>   attrSets;
            IList <CreateAttributeUse>   attrUses;

            attributeSetBuilder.BuildAttributeSetsFromEntityType(typeof(FluffPulpAttrSetInstance), out attrSets, out attrs, out attrVals, out attrUses);

            Save(attrs, attrSets);
        }
예제 #4
0
        private string CreateTestColorAttributeSet()
        {
            string attrSetId;
            var    attributeSetBuilder = new AttributeSetBuilder <CreateAttributeSetDto, CreateAttributeDto, CreateAttributeValueDto, CreateAttributeUseDto>(new IdGenerator());


            IList <CreateAttributeDto>      attrs;
            IList <CreateAttributeValueDto> attrVals;
            IList <CreateAttributeSetDto>   attrSets;
            IList <CreateAttributeUseDto>   attrUses;

            ////////////////////////////////////////////

            attributeSetBuilder.BuildAttributeSetsFromEntityType(typeof(AttributeSetInstanceTestClass3), out attrSets, out attrs, out attrVals, out attrUses);

            Assert.AreEqual(1, attrSets.Count); //System.Console.WriteLine(attrSets);
            Assert.AreEqual(1, attrs.Count);    //System.Console.WriteLine(attrs);
            Assert.IsTrue(attrs[0].IsList);
            Assert.AreEqual((typeof(string)).Name, attrs[0].AttributeValueType);
            Assert.AreEqual(3, attrVals.Count); //System.Console.WriteLine(attrVals);
            System.Console.WriteLine(attrUses);

            var attr_0 = attrs[0];

            attr_0.FieldName = TestColorAttributeFieldName;
            var existed = _attributeApplicationServiceFactory.AttributeApplicationService.GetByProperty("FieldName", attr_0.FieldName);

            if (existed != null && existed.Count() > 0)
            {
                Console.WriteLine(existed.First());
                // 检查属性/属性集是否完全相同?
                // 现在只是抛出异常:
                throw new InvalidOperationException(String.Format("Existed Attribute. attr_0.FieldName = \"{0}\";", attr_0.FieldName));
            }
            else
            {
                _attributeApplicationServiceFactory.AttributeApplicationService.When((ICreateAttribute)attr_0);

                var attrSet_0 = attrSets[0];
                _attributeSetApplicationServiceFactory.AttributeSetApplicationService.When((ICreateAttributeSet)attrSet_0);

                attrSetId = attrSets[0].AttributeSetId;
            }
            return(attrSetId);
        }
예제 #5
0
        public void TestAttributeSetBuilder()
        {
            var attributeSetBuilder = new AttributeSetBuilder <CreateAttributeSet, CreateAttribute, CreateAttributeValue, CreateAttributeUse>(new IdGenerator());


            IList <CreateAttribute>      attrs;
            IList <CreateAttributeValue> attrVals;
            IList <CreateAttributeSet>   attrSets;
            IList <CreateAttributeUse>   attrUses;

            ////////////////////////////////////////////

            attributeSetBuilder.BuildAttributeSetsFromEntityType(typeof(AttributeSetInstanceTestClass1), out attrSets, out attrs, out attrVals, out attrUses);

            Assert.AreEqual(3, attrSets.Count);//System.Console.WriteLine(attrSets);
            System.Console.WriteLine(attrs);
            System.Console.WriteLine(attrVals);
            System.Console.WriteLine(attrUses);

            foreach (var a in attrs)
            {
                attributeApplicationService.When(a);
            }
            foreach (var attrSet in attrSets)
            {
                attributeSetApplicationService.When(attrSet);
            }

            ////////////////////////////////////////////

            attributeSetBuilder.BuildAttributeSetsFromEntityType(typeof(AttributeSetInstanceTestClass2), out attrSets, out attrs, out attrVals, out attrUses);

            Assert.AreEqual(1, attrSets.Count);//System.Console.WriteLine(attrSets);
            System.Console.WriteLine(attrs);
            Assert.AreEqual(1, attrs.Count);
            Assert.IsTrue(attrs[0].IsList);
            Assert.AreEqual((typeof(int)).Name, attrs[0].AttributeValueType);
            System.Console.WriteLine(attrVals);
            System.Console.WriteLine(attrUses);

            foreach (var a in attrs)
            {
                attributeApplicationService.When(a);
            }
            foreach (var attrSet in attrSets)
            {
                attributeSetApplicationService.When(attrSet);
            }

            ////////////////////////////////////////////

            attributeSetBuilder.BuildAttributeSetsFromEntityType(typeof(AttributeSetInstanceTestClass3), out attrSets, out attrs, out attrVals, out attrUses);

            Assert.AreEqual(1, attrSets.Count); //System.Console.WriteLine(attrSets);
            Assert.AreEqual(1, attrs.Count);    //System.Console.WriteLine(attrs);
            Assert.IsTrue(attrs[0].IsList);
            Assert.AreEqual((typeof(string)).Name, attrs[0].AttributeValueType);
            Assert.AreEqual(3, attrVals.Count); //System.Console.WriteLine(attrVals);
            System.Console.WriteLine(attrUses);

            foreach (var a in attrs)
            {
                attributeApplicationService.When(a);
            }
            foreach (var attrSet in attrSets)
            {
                attributeSetApplicationService.When(attrSet);
            }

            ////////////////////////////////////////////

            attributeSetBuilder.BuildAttributeSetsFromEntityType(typeof(AttributeSetInstanceTestClass4), out attrSets, out attrs, out attrVals, out attrUses);

            Assert.AreEqual(1, attrSets.Count); //System.Console.WriteLine(attrSets);
            Assert.AreEqual(1, attrs.Count);    //System.Console.WriteLine(attrs);
            Assert.IsTrue(attrs[0].IsList);
            Assert.AreEqual((typeof(int)).Name, attrs[0].AttributeValueType);
            Assert.AreEqual(7, attrVals.Count); //System.Console.WriteLine(attrVals);

            foreach (var a in attrs)
            {
                attributeApplicationService.When(a);
            }
            foreach (var attrSet in attrSets)
            {
                attributeSetApplicationService.When(attrSet);
            }

            ////////////////////////////////////////////

            System.Console.WriteLine(attributeSetApplicationService.GetAll(0, int.MaxValue));
        }