1

我有以下 EndpointConfig.cs

public class EndpointConfig : IConfigureThisEndpoint, IWantCustomInitialization, AsA_Server
{
    public void Init()
    {
        Configure
            .With(GetAllAssemblies())
            .XmlSerializer()
            .UseTransport<SqlServer>()
            .DefaultBuilder()
            .UseNHibernateSubscriptionPersister()
            .UseNHibernateTimeoutPersister()
            .UseNHibernateSagaPersister()
            .UseNHibernateGatewayPersister()
            .UnicastBus()
            .PurgeOnStartup(false);
    }
}

我得到以下异常:

2013-10-09 16:15:40,780 [16] ERROR NServiceBus.Satellites.SatelliteLauncher [(null)] <(null)> - Satellite NServiceBus.Gateway.Receiving.GatewayReceiver, NServiceBus.Core, Version=4.0.0.0, Culture=neutral,     PublicKeyToken=9fc386479f8a226c
System.Exception: Failed to start listener for http://localhost/NserviceBus/ make sure that you have admin privileges ---> System.Net.HttpListenerException: The process cannot access the file because it is being used by another process
    at System.Net.HttpListener.AddAllPrefixes()
    at System.Net.HttpListener.Start()
    at NServiceBus.Gateway.Channels.Http.HttpChannelReceiver.Start(String address, Int32 numWorkerThreads) in c:\BuildAgent\work\d4de8921a0aabf04\src\NServiceBus.Core\Gateway\Channels\Http\HttpChannelReceiver.cs:line 36
    --- End of inner exception stack trace ---
    at NServiceBus.Gateway.Channels.Http.HttpChannelReceiver.Start(String address, Int32 numWorkerThreads) in c:\BuildAgent\work\d4de8921a0aabf04\src\NServiceBus.Core\Gateway\Channels\Http\HttpChannelReceiver.cs:line 40
    at NServiceBus.Gateway.Receiving.IdempotentChannelReceiver.Start(Channel channel, Int32 numWorkerThreads) in c:\BuildAgent\work\d4de8921a0aabf04\src\NServiceBus.Core\Gateway\Receiving\IdempotentChannelReceiver.cs:line 34
    at NServiceBus.Gateway.Receiving.GatewayReceiver.Start() in c:\BuildAgent\work\d4de8921a0aabf04\src\NServiceBus.Core\Gateway\Receiving\GatewayReceiver.cs:line 71
    at NServiceBus.Satellites.SatelliteLauncher.StartSatellite(SatelliteContext ctx) in c:\BuildAgent\work\d4de8921a0aabf04\src\NServiceBus.Core\Satellites\SatelliteLauncher.cs:line 107

有任何想法吗?

谢谢

4

1 回答 1

0

您的意思是启用网关组件吗?
如果没有,请删除.UseNHibernateGatewayPersister()

根本问题与 NServiceBus 无关。运行 Visual Studio 的帐户无权保留 HTTP/S 端口。自托管 WCF 端点时也会发生同样的事情。

有关MSDN的更多信息

于 2013-10-10T07:42:23.417 回答