ServiceHostFactory с несколькими привязками - PullRequest
2 голосов
/ 19 октября 2010

Как использовать ServiceHostFactory с несколькими привязками?

Это то, что я пробовал, и я продолжаю получать проблемы, одна за другой ошибка.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.ServiceModel;
using System.ServiceModel.Activation;
using System.ServiceModel.Web;
using System.Web.Services.Description;
using System.ServiceModel.Description;
using System.ServiceModel.Channels;

namespace WcfService7
{
    public class clsMyOwnServiceHost : ServiceHostFactory
    {    
        protected override ServiceHost CreateServiceHost(Type t, Uri[] baseAddresses)
        {
            NetTcpBinding binding = new NetTcpBinding(SecurityMode.None);
            BasicHttpBinding basicbinding = new BasicHttpBinding(BasicHttpSecurityMode.None);
            WSHttpBinding wsbinding = new WSHttpBinding(SecurityMode.None);
            ServiceHost host = new ServiceHost(t, baseAddresses);

            foreach(Uri uri in baseAddresses)
            {
                host.AddServiceEndpoint(typeof(IService1), basicbinding, uri);
                host.AddServiceEndpoint(typeof(IService1), wsbinding, uri);       
                host.AddServiceEndpoint(typeof(IService1), binding, uri);          
            }

            return host;
        }
    }
}

1 Ответ

2 голосов
/ 19 октября 2010

URI должен быть различным для каждого типа привязки.

TCP: net.tcp: // {имя хоста} [: порт] / {место}
Базовый HTTP: http://{hostname}[:port]/{location}
WS HTTP: http://{hostname}:{port}/{location}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...