我有VisualStudio 2012,我正在尝试按照以下教程http://msdn.microsoft.com/en-us/library/hh674270.aspx
但是我无法从“模板”对话框的 WCF窗格中找到架构定义选项。
我必须安装一些东西吗?那会是什么?也许是一个延伸?
提前致谢。
答案 0 :(得分:2)
你不需要安装它 - 它已经存在了。可能会让你感到惊讶的是它只能在“WCF服务库”模板中使用。
然后添加模式文件,如下所示:
然后,您可以在项目属性中获得其他选项:
答案 1 :(得分:1)
我想补充一下我的发现。
我也想要契约优先工具,但没有找到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,因此将来可能会发生变化。
因此,通过此黑客,您可以将合同优先服务直接部署到iis。
然而问题是为什么它在visual studio 2012中没有开箱即用
答案 2 :(得分:0)
您无需从WCF窗格添加XSD,只需从“数据”窗格中获取XML Schema项。
如果VS 2012上有“启用XSD作为类型定义语言”选项,它将在解决方案的命名空间+“.ContractTypes”下生成类型。
检查输出窗口以查看构建过程对XSD执行的操作。