为什么我不能在我的settings.settings中分配一些类型?

时间:2014-02-11 15:12:33

标签: c# settings designer

在VS 2010中将一些数据入侵我的settings.settings时,我发现我可以使用我使用的各种库中的许多不同类型,例如,来自System.Net命名空间的HTTPListener。

但由于一些奇怪的原因,我看不出原因,我不能使用IPAddress类型,我实际需要。 为什么会这样,我怎么能解决这个问题,因为对我来说,这只不过是一个烦人的错误。

我不知道该尝试解决这个问题?

1 个答案:

答案 0 :(得分:6)

  

System.Net.IPAddress具有Seri​​alizable-Attribute

这不相关,[Serializable]仅对二进制序列化有用。使用XML序列化序列化设置。哪个是核心问题,只有在类型具有默认构造函数时才有效。因此,反序列化器可以创建新对象并设置公共字段和属性。 IPAddress没有。

考虑使用简单的字符串。在代码中使用IPAddress.Parse()和ToString()进行转换。