SenseNet.ContentRepository.Tests.FieldTest.GetDefaultControl C# (CSharp) Метод

GetDefaultControl() приватный Метод

private GetDefaultControl ( Type fieldType ) : FieldControl
fieldType System.Type
Результат SenseNet.Portal.UI.Controls.FieldControl
        private FieldControl GetDefaultControl(Type fieldType)
        {
            //-- ...hogy ez mekkora hack :)
            object[] attrs1 = fieldType.GetCustomAttributes(typeof(ShortNameAttribute), false);
            string ftname = fieldType.Name;
            string shortName = attrs1.Length == 0 ?
                ftname.ToLower().EndsWith("Field") && ftname.Length > 5 ? ftname.Substring(0, ftname.Length - 5) : ftname
                : ((ShortNameAttribute)attrs1[0]).ShortName;

            XmlDocument xd = new XmlDocument();
            if (fieldType == typeof(WhoAndWhenField))
                xd.LoadXml(String.Concat("<Field name='TestField' type='", shortName, "'><Bind property='a' /><Bind property='b' /></Field>"));
            else
                xd.LoadXml(String.Concat("<Field name='TestField' type='", shortName, "' />"));
            xd.DocumentElement.CreateNavigator();

            FieldDescriptor fieldDesc = FieldDescriptor.Parse(xd.DocumentElement.CreateNavigator(), null, ContentType.GetByName("GenericContent"));
            FieldSetting setting = FieldSetting.Create(fieldDesc);
            Content content = Content.CreateNew("GenericContent", Repository.Root, "sdf");
            Field field = Field.Create(content, setting);

            FieldControl fieldControl;
            fieldControl = GenericFieldControl.CreateDefaultFieldControl(field);

            return fieldControl;
        }
FieldTest