RouteTable路由,制作我自己的代理?

时间:2013-03-31 09:20:19

标签: c# wcf

我喜欢控制并知道发生了什么,我也希望在我的网络服务中没有任何扩展名(.svc)。所以我没有在Web.config中定义任何端点。我使用RouteTable类添加Routes。像这样:

        RouteTable.Routes.Add(
            new ServiceRoute(@"Default",
                new CustomWebServiceHostFactory(),
                typeof(DefaultService)));
        RouteTable.Routes.Add(
            new ServiceRoute(@"Customer",
                new CustomWebServiceHostFactory(),
                typeof(CustomerService)));

我尝试在客户端使用这些

_defaultService = new ChannelFactory<IDefaultContract>(
new BasicHttpBinding(), new EndpointAddress(@"http://myWeb.com/Default/")).CreateChannel();

我收到错误:“没有端点正在侦听......”
使用浏览器我可以调用任何操作(myWeb.com/Default/ReturnBool返回true)

1 个答案:

答案 0 :(得分:0)

BasicHttpBinding内添加了CustomWebServiceHostFactory ServiceEndpoint,现在如果合同可用,我可以将该服务作为客户端使用。