5

我有 VisualStudio 2012,我正在尝试遵循以下教程http://msdn.microsoft.com/en-us/library/hh674270.aspx

但是我在模板对话框的WCF 窗格中找不到选项架构定义。

我必须安装一些东西吗?那会是什么?一个扩展,也许?

提前致谢。

4

3 回答 3

2

您无需安装它 - 它已经存在。可能会引起您注意的是它仅在“WCF 服务库”模板中可用。

VS 2012 正确的 WCF 项目

一旦你添加了一个模式文件,如图所示: 添加 XML 模式

然后,您可以在项目属性上获得一个附加选项:

在此处输入图像描述

于 2013-05-08T13:07:12.470 回答
1

我想添加我的发现。

我也想要 Contract-First 工具,但没有找到 msdn 链接中提到的设置。

但是我发现了如何将它添加到任何项目类型,因为我希望我的 iis 托管服务也首先使用合同。

您所做的是创建一个如上所述的“WCF 服务库”。

然后在文本编辑器中打开项目的 csproj 文件。

然后将看起来像这样的条目复制粘贴到另一个项目文件中

  <FlavorProperties GUID="{3D9AD99F-2412-4246-B90B-4EAA41C64699}">
    <WcfProjectProperties>
      <AutoStart>True</AutoStart>
    </WcfProjectProperties>
  </FlavorProperties>

您还需要将目标项目中的 guid:s 更改为以下内容:

<ProjectTypeGuids>{3D9AD99F-2412-4246-B90B-4EAA41C64699};{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>

带有 guid 的 FlavorProperties 标签来自 vs2012 更新 3,因此将来可能会更改。

因此,通过这个 hack,您可以将合同优先服务直接部署到 iis。

然而,问题是为什么它在 Visual Studio 2012 中不能像这样开箱即用

于 2013-10-17T14:17:18.547 回答
0

您不需要从 WCF 窗格中添加 XSD,只需从 Data 窗格中获取 XML Schema 项。

如果 VS 2012 启用了“启用 XSD 作为类型定义语言”选项,它将在您的解决方案的命名空间 +“.ContractTypes”下生成类型。

检查输出窗口以查看构建过程对 XSD 执行的操作。

于 2013-03-04T15:19:21.740 回答