2

我正在创建一个类库,其中包含从客户端 xml 文件生成的多个数据集。

我将示例 xml 文件拖入 VStudio 并创建 .xsd 文件,将它们添加到项目中并将工具设置为 MSDataSetGenerator,然后(在收到第一个构建错误后)发现所有生成的类都称为 NewDataSet。我通过在 xsd 文件的属性对话框中设置工具命名空间来避免构建错误。但是使用多个数据集的应用程序代码变得丑陋,因为您不能使用“使用”而不会使“NewDataSet”变得模棱两可。此外,类名“NewDataSet”并不是很有用。

有没有办法覆盖/影响生成的类的命名?

4

3 回答 3

7

我已经看到了这个并像这样解决它:

将此添加到您的架构标记中...“ xmlns:msdata="urn:schemas-microsoft-com:xml-msdata

例如,xsd 的前两行可能如下所示:

<?xml version="1.0" encoding="utf-8" ?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">

您的 xsd 可能将所有内容包装在一个元素中,其名称就是您想要的类名......所以这样做:

<xs:element name="YOUR_CLASSNAME" msdata:IsDataSet="true">

这大致就是我为使其工作所做的工作。

于 2012-10-16T14:49:11.487 回答
3

您可以通过设置元素的id属性来更改生成类的名称。schema

在此处输入图像描述

于 2017-05-09T13:12:32.853 回答
1

VS 2019

更安全的变体是通过 VS 更改生成的类名。打开相应的 XSD 文件并更改方案的属性Name(默认为 NewDataSet)。您也可以通过通用文本编辑器进行更改,但您必须在文件中找到所有条目“NewDataSet”(它不止一个)。

于 2019-12-05T20:02:08.360 回答