【问题标题】:how do i consume net.tcp binding within web project?我如何在 web 项目中使用 net.tcp 绑定?
【发布时间】:2014-10-17 07:20:41
【问题描述】:

我正在使用 mvc 开发一个 Web 应用程序,我们已经有一个执行 http 绑定的服务,客户端希望 tcp 绑定某些操作(不太确定为什么)但这是他们的要求,所以我正在尝试设置net.tcp 绑定,我看到的所有引用都涉及 Windows 应用程序而不是 Web 应用程序。

我想我的问题有两部分,首先你能不能通过同一个服务/项目同时运行 httpbinding 和 net.tcp 绑定。

其次,我将如何通过 webproject 使用服务?

【问题讨论】:

    标签: c# wcf net.tcp


    【解决方案1】:

    来自“编程 WCF 服务” http://www.amazon.de/Programming-WCF-Services-Mastering-AppFabric-ebook/dp/B0043D2DUK/ref=sr_1_fkmr0_1?ie=UTF8&qid=1408811647&sr=8-1-fkmr0&keywords=programming+wcf+services+3d+edition

    每个服务都与一个地址相关联,该地址定义了服务的位置,一个绑定 它定义了如何与服务进行通信,以及一个定义什么的契约 服务可以。这个管理服务的三驾马车很容易记住,就像 ABC 服务。 WCF 以端点的形式形式化了这种关系。端点 是地址、合约、绑定的融合。

    因此,在您的情况下,您需要为您的服务定义 2 个端点。 同一本书的例子:

    <service name = "MyService">
    <endpoint
    address = "http://localhost:8000/MyService"
    binding = "wsHttpBinding"
    contract = "IMyContract"
    />
    <endpoint
    address = "net.tcp://localhost:8001/MyService"
    binding = "netTcpBinding"
    contract = "IMyContract"
    />
    <endpoint
    address = "net.tcp://localhost:8002/MyService"
    binding = "netTcpBinding"
    contract = "IMyOtherContract"
    />
    </service>
    

    在客户端,您需要在 VS 中“添加服务引用”并提供所需端点的地址。 http://msdn.microsoft.com/en-us/library/bb628652.aspx

    【讨论】:

      【解决方案2】:

      1) 是的,您可以在服务中设置 HTTP 和 net.tcp 端点(每个端点都需要自己的元数据交换端点)。更多详情here

      2) 在您的 Web 应用程序项目中,右键单击 References,然后单击 Add Service Reference。在对话框中,复制 net.tcp 服务的端点地址。输入所需的命名空间,然后单击确定。

      【讨论】:

      • 这不起作用,因为 http 绑定不支持回调
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-21
      • 2011-12-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-24
      相关资源
      最近更新 更多