Exemplo n.º 1
0
        public void SettingsProperty_SettingsWithAttributes_Ok()
        {
            SettingsWithAttributes settings = new SettingsWithAttributes();

            Assert.Equal(1, settings.Properties.Count);
            SettingsProperty property = settings.Properties["StringProperty"];

            Assert.Equal(typeof(TestProvider), property.Provider.GetType());
            Assert.Equal(SettingsSerializeAs.Binary, property.SerializeAs);
        }
Exemplo n.º 2
0
        private static string GetKey(string propertyName, string attributeMemberName)
        {
            var test                = new SettingsWithAttributes();
            var defaultProperty     = test.GetType().GetProperty(propertyName);
            var appSettingAttribute = defaultProperty.CustomAttributes
                                      .Where(a => a.AttributeType == typeof(AppSettingAttribute))
                                      .FirstOrDefault();
            var nameArgument = appSettingAttribute.NamedArguments
                               .Where(arg => arg.MemberName == attributeMemberName)
                               .FirstOrDefault();

            return(nameArgument.TypedValue.Value != null?
                   nameArgument.TypedValue.Value.ToString() :
                       null);
        }
Exemplo n.º 3
0
        private static string GetKey(string propertyName, string attributeMemberName)
        {
            var test = new SettingsWithAttributes();
            var defaultProperty = test.GetType().GetProperty(propertyName);
            var appSettingAttribute = defaultProperty.CustomAttributes
                .Where(a => a.AttributeType == typeof(AppSettingAttribute))
                .FirstOrDefault();
            var nameArgument = appSettingAttribute.NamedArguments
                .Where(arg => arg.MemberName == attributeMemberName)
                .FirstOrDefault();

            return nameArgument.TypedValue.Value != null ?
                nameArgument.TypedValue.Value.ToString() :
                null;
        }