3

我正在尝试升级 VS 2008 项目以在 VS 2010 中工作,有很多 .xsd 文件使用自定义工具 MSDataSetGenerator 生成类型化数据集

该构建在 2008 年运行良好,但在 2010 年构建时会产生数百个错误,可能是因为它在 2010 年使用的 MSDataSetGenerator 与 VS 2008 使用的不同。是否可以告诉 2010 使用与 2008 相同的工具版本?

我收到错误,例如

“XXX”类型已包含“YYY”的定义

“XXX”和“XXX”之间的歧义

在生成的 Designer.cs 文件 2010 中显示:

// This code was generated by a tool. // Runtime Version:4.0.30319.17020

[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")]

2008 年显示:

// This code was generated by a tool. // Runtime Version:2.0.50727.3053

[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "2.0.0.0")]

4

1 回答 1

4

事实证明,这是由于

  • VS2010 转换项目时更改了命名空间,我能够进入属性并将自定义工具命名空间设置为那些命名空间与它们所在的文件夹不同的文件所需的命名空间
  • 由于不正确的 csproj 结构,除了已经存在的文件之外,VS 还生成了第二个 *.Designer.cs 文件。问题是原始 Designer.cs 依赖于 .cs 文件而不是 .xsd 文件,通过删除重复的文件然后编译

因此,2010 年使用的 MSDataSetGenerator 在进行这些修复后工作正常

于 2012-09-21T19:15:00.123 回答