基于通过序列化另一个C#类生成的XML,我遇到了创建* .cs(C#类)的问题。 XSD.exe引发以下错误:
- A column named 'Conditions' already belongs to this DataTable: cannot set a
nested table name to the same name.
我的流程如下:
序列化为XML的类(在第1点)看起来像这样:
public class A
{
public A(){}
private List<string> _cond = new List<String>();
public List<string> Conditions
{
get{ return _cond; }
set{ _cond = value }
}
}
public class B:A
{
}
public class C:A
{
}
public class Data
{
B b = new B();
C c = new C();
/* ... ADD SOME DATA etc ... */
}
// After that I serialize to XML the "Data" class object
有人可以建议解决方法吗?这显然是由遗留条件属性
引起的答案 0 :(得分:0)
您可以更改xsd.exe创建输出的方式,在您的情况下,使用/ c(lasses)开关是有意义的。然后,它不会创建数据集而是创建“普通”类。
还有LinqToXsd,它有一个相当不错的代码生成器。