我正在使用一个类来存储连接字符串。我的应用程序从设置类中读取设置并将其分配给实例变量。然后将其绑定到一些控件。我的连接字符串类具有以下属性集:
[TypeConverter(typeof(ConnectionStringConverter))]
我的类型转换器如下所示。
问题是,如果设置文件中的设置为空白,则设置类返回 null。而不是我使用默认构造函数的连接字符串类的实例。
请有人能帮我解开这个谜语。
谢谢。
public class ConnectionStringConverter : TypeConverter
{
public override bool CanConvertFrom(ITypeDescriptorContext context, Type sourceType)
{
if (sourceType == typeof(string))
return true;
else
return base.CanConvertFrom(context, sourceType);
}
public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value)
{
if (value is string)
return (ConnectionString)(value as string);
else
return base.ConvertFrom(context, culture, value);
}
public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType)
{
if (destinationType == typeof(string))
return (string)(value as ConnectionString);
else
return base.ConvertTo(context, culture, value, destinationType);
}
}