我正在尝试使用此类生成自定义xml文档:
[CollectionDataContract(Name="Applications", ItemName="Application")]
public class ApplicationNamesList : List<string> { }
我正在使用的xml输出应该如下所示
<Applications>
<Application>...</Application>
<Application>...</Application>
<Application>...</Application>
</Applications>
但是,一旦我有List<string>
个对象并尝试将其转换为ApplicationNamesList
,我就会获得InvalidCastException
。
有什么基本的东西我没有到这里来吗?
答案 0 :(得分:6)
List<string>
根本不是ApplicationNamesList
。你需要做这样的事情:
var result = new ApplicationNamesList();
result.AddRange(list);
list
为List<string>
。
有时使用真实世界的例子很有帮助:
每辆保时捷(=&gt; ApplicationNamesList
)都是一辆车(=&gt; List<string>
)。但并不是每辆车都是保时捷。