-1

私は自分の Web サービス内に拡張子 (.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 を返します)

4

1 に答える 1

0

BasicHttpBinding内部に ServiceEndpointを追加しましたCustomWebServiceHostFactory。コントラクトが利用可能な場合、クライアントとしてサービスを利用できるようになりました。

于 2013-04-01T00:09:06.227 に答える