如何在Visual Studio中导出和导入XSD文件?

问题描述 投票:6回答:2

如何在Visual Studio中导出和导入XSD?我只是尝试将xsd文件复制并粘贴到一个新项目中,VS2008自动为它创建了一些包装类。当我试图向VS中的表添加查询时,我收到连接字符串被破坏的错误。我通过向app.config插入正确的连接字符串稍微修复了一下,但我仍然得到与连接字符串相关的错误。

我的问题不是如何修复此连接字符串,但我如何正确导出和导入连接字符串?我有可以使用的向导吗?谢谢

更新#2我正在使用的XSD文件是使用VS studio通过使用本教程http://www.asp.net/learn/data-access/tutorial-01-cs.aspx拖放表来创建的。我复制了这个XSD文件并将其粘贴到一个新项目中,VS自动为它生成了代码,在本例中是一个“类型化数据集”。在这个新项目中,当我尝试向XSD文件中的表添加查询时(使用我之前提到的教程),我收到一条错误,指出连接字符串'xxxxxxxxx'不存在(im释义)。此“xxxxxxxxx”连接字符串仅存在于我复制XSD文件而不是新项目中的项目中。因此,此xsd包含依赖于web.config的信息,特别是它的连接字符串。因此,处理和粘贴此XSD文件不起作用。我希望有一个向导导出工具可以删除依赖信息(即:连接字符串)及其相关设置,以便我可以正确地将它添加到另一个项目并向表中添加查询而不会出现错误。我希望这是有道理的...

visual-studio xsd
2个回答
2
投票

这不起作用。问题是将现有数据集添加到项目中只会将其添加为xsd,即Visual Studio认为xml架构不是数据集。即使在VS 2015中也是如此。为了使其工作,在添加现有xsd文件之后,必须使用gvim或notepad编辑项目文件并添加以下行:

在编译部分添加:

<Compile Include="MyDataSet.Designer.cs">
  <AutoGen>True</AutoGen>
  <DesignTime>True</DesignTime>
  <DependentUpon>MyDataSet.xsd</DependentUpon>
</Compile>

查找具有的ItemGroup标记

<None Include="MyDataSet.xsd"/>

将该行更改为如下所示,并添加几个Done选项卡,如下所示:

<None Include="MyDataSet.xsd">
  <Generator>MSDataSetGenerator</Generator>
  <LastGenOutput>MyDataSet.Designer.cs</LastGenOutput>
  <SubType>Designer</SubType>
</None>
<None Include="MyDataSet.xss">
  <DependentUpon>MyDataSet.xsd</DependentUpon>
</None>
<None Include="MyDataSet.xsc">
  <DependentUpon>MyDataSet.xsd</DependentUpon>
</None>

保存文件并重新加载Visual Studio项目。你差不多完成了。右键单击xsd文件,然后选择运行自定义工具。现在你可以建立,你应该没问题。


1
投票

你想用你的XSD做什么?

默认情况下,Visual Studio将基于您的XSD创建“类型化数据集”。您可以使用它来查询数据库表并在需要时进行更新。那是你要的吗?

如果没有:你想在Visual Studio中用你的XSD做什么呢?

您可以通过执行“添加现有项”然后选择该文件,轻松地将磁盘上的现有XSD添加到Visual Studio项目中。实际上没有单独的“导入/导出”功能。

如果您只想将XSD用于文档/信息目的,请单击该文件,然后在其属性窗口中将其“构建操作”设置为“无”或“嵌入式资源”。

Set Build Action

© www.soinside.com 2019 - 2024. All rights reserved.