【问题标题】:How to reconfigure WCF webservice to use IIS instead of localhost:8731如何配置 WCF Web 服务以使用 IIS 而不是 localhost:8731
【发布时间】:2009-06-05 17:06:20
【问题描述】:

我的开发环境(VStudio 2008、WinXP)中有一个小型 WCF Web 服务。我很高兴能够在这个阶段使用 WCF 测试客户端。

目前,我的服务(项目)的APP.CONFIG包含:

    <host>
      <baseAddresses>
        <add baseAddress="http://localhost:8731/Design_Time_Addresses/Contracts/Service1/" />
      </baseAddresses>
    </host>

ASP.NET Web 应用程序项目在项目属性中显示一个漂亮的选项卡,其中带有一个单选按钮,您可以轻松选择:

  • 使用 Visual Studio 开发服务器 (使用指定或自动分配端口)
  • 使用本地 IIS Web 服务器(用于 '创建虚拟目录')

我对如何最好地配置此项目以与我的 IIS 本地主机网络服务器一起使用感到困惑。我绝对希望保留使用 WCF 测试客户端的能力。如此多的配置似乎发生在“幕后”,我担心会破坏我的测试环境。希望您能帮助我并就这些目标提出最佳做法。

编辑:这是现在的解决方案文件的 sn-p:

Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Contracts", "Contracts\Contracts.csproj", "{BC414788-5E5B-4584-9350-B4DD6129665A}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Service", "Service\Service.csproj", "{252DE277-D864-4423-BED5-33A8B5ABCAB7}"
EndProject

【问题讨论】:

    标签: visual-studio-2008 wcf web-services iis


    【解决方案1】:

    如果您在 IIS 中托管 WCF 服务,则需要创建一个虚拟目录和一个“myservice.svc”文件(有大量关于如何执行此操作的文档)。

    在这种情况下,您的网址将是

    http://localhost/(your virtual dir)/myservice.svc
    

    app.config 文件中的任何内容都将被忽略。

    WcfTestClient 和所有这些简洁的工具应该可以继续正常工作。

    马克

    PS:Cwoo 有一个很好的链接 - 实际上,Aaron Skonnard 有大量关于 WCF 的介绍性和高级视频。您可能想在第 9 频道的“Endpoint TV”节目中查看它们 - 很多好东西!

    PPS:或转至 Pluralsight screencast section 并单击云中的“WCF 基础知识”标签以获取更基本的 WCF 截屏视频以帮助您入门 - 很棒的东西!

    【讨论】:

    • 我知道如何做上述事情(另外我需要一个 web.config),但是我现有项目的源代码存在于解决方案中:C:\Documents and Settings\johna\我的 Documents\Visual Studio 2008\Projects 如果我理解正确,我需要从另一个 VStudio 解决方案/项目重新开始,并将我写的东西“复制”到配置不同的新项目中?
    • 不,一点也不 - 继续使用它。这就是 WCF 的美妙之处 - 您可以编写一次实际的服务代码,然后将其部署到各种场景并使用各种绑定,只需更改配置设置即可。
    • 您的服务代码目前在什么 - 类库中?出色的!只需设置一个新的网站或 Web 应用程序(您的选择),然后从网站/应用程序引用该类库,添加 *.svc 文件 - 大功告成!就这么简单。
    • 谢谢marc_s,我还是有点困惑。看来我必须从某种新的 VStudio2008 项目“重新开始”。然后让新项目“引用”WCF 服务库项目......如何做到这一点让我感到困惑。我是“添加引用”到当前项目的 bin (.dll) 还是什么?请注意我对原始帖子的 EDIT 更新,我在其中粘贴了我的 SOLUTION 文件的一部分。非常感谢您耐心的帮助。
    • 两天前我也尝试过这样做:o 这是我关注的视频。 mschnlnine.vo.llnwd.net/d1/ch9/7/6/1/1/2/4/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-10-04
    • 2011-02-19
    • 1970-01-01
    • 2012-03-16
    • 1970-01-01
    • 1970-01-01
    • 2011-09-07
    相关资源
    最近更新 更多