我正在尝试使用此类生成自定义xml文档:
[CollectionDataContract(Name="Applications", ItemName="Application")]
public class ApplicationNamesList : List<string> { }
Run Code Online (Sandbox Code Playgroud)
我想要的xml输出应该是这样的
<Applications>
<Application>...</Application>
<Application>...</Application>
<Application>...</Application>
</Applications>
Run Code Online (Sandbox Code Playgroud)
但是,一旦我有了一个List<string>对象并尝试将其投射到ApplicationNamesList我得到一个InvalidCastException.
有什么基本的东西我没有到这里?
一个List<string>根本不是ApplicationNamesList.你需要做这样的事情:
var result = new ApplicationNamesList();
result.AddRange(list);
Run Code Online (Sandbox Code Playgroud)
随着list作为一个List<string>.
有时使用真实世界的例子会有所帮助:
每辆保时捷(=> ApplicationNamesList)都是一辆汽车(=> List<string>).但并不是每辆车都是保时捷.