【发布时间】:2011-03-29 13:32:44
【问题描述】:
我试图弄清楚如何为我创建的 WF 服务 (MyFoo.xamlx) 提供端点等。通常,当您创建服务时,您需要让 Service name="" 反映您创建的服务类型?即通过填写这样的内容:
<Service name="MyNameSpace.Foo" behaviorConfiguration="myFooBehaviorConfig">
这适用于典型的 .svc 场景,我可以正常工作。只是如何将此概念映射到 .xamlx 服务?如果我有 Foo.xamlx 将其放在服务名称中不起作用 - 或者似乎不起作用(因为没有启用元数据)。
如果我随后从服务中删除 behaviorConfiguration 属性,并从 <behavior/> 标记中删除 myFooBehaviorConfig - 它本质上是然后为网络配置提供更多的全局设置 - 繁荣!我可以看到 .xamlx 公开的方法/操作?
<serviceBehaviors>
<behavior name="foo" >
对比
<serviceBehaviors>
<behavior >
起初这很好,不需要任何努力,但同时我不希望开发人员为此访问 HTTP 端点或网络管道。我只希望他们通过我指定的 net.tcp 端口进入。为了做到这一点,我需要以某种方式将<Service name=""/> 与 xamlx 匹配?
我也尝试过使用创建一个空的 .svc 文件然后以这种方式指向 xamlx 的技巧(这样开发人员总是假定它是 .svc 而不是 .xamlx)
<%@ ServiceHost Language="C#" Debug="true" Service="ActivityHubService.xamlx" Factory="System.ServiceModel.Activities.Activation.WorkflowServiceHostFactory" %>
再次,如果我删除命名行为等,这也可以通过 foo.svc ..但我似乎无法破解整个匹配 <service> 与怪异的 xamlx! :) 呵呵。
令人沮丧..
有谁是这个领域的专家?
【问题讨论】:
标签: wcf web-config workflow-foundation-4 endpoint workflowservice