public void TryConvertString()
 {
     converters.Add(new StringConverter(), typeof(string), typeof(int));
     Assert.True(converters.TryConvert("123", typeof(int), out var value));
     Assert.IsType <int>(value);
     Assert.Equal(123, value);
 }
        public void TryConvertSourceNullException()
        {
            var ex = Assert.Throws <ArgumentNullException>(() =>
            {
                converters.TryConvert(null, typeof(int), out var _);
            });

            Assert.Equal("source", ex.ParamName);
        }
Beispiel #3
0
        public bool TryGetValue(string identifier, out object value)
        {
            IFieldDefinition targetField = ModelDefinition.Fields.FirstOrDefault(f => f.Identifier == identifier);

            if (targetField == null)
            {
                throw Ensure.Exception.ArgumentOutOfRange("identifier", "Unnable to find field '{0}' in model '{1}'.", identifier, ModelDefinition.Identifier);
            }

            string sourceValue;

            if (Storage.TryGetValue(identifier, out sourceValue))
            {
                if (ConverterCollection.TryConvert(sourceValue, targetField, out value))
                {
                    return(true);
                }
            }

            value = null;
            return(false);
        }