Важным моментом является то, что «[Assembly: FabricTransportServiceRemotingProvider (RemotingListener = RemotingListener.V2Listener, RemotingClient = RemotingClient.V2Client)]» также следует добавлять в клиентскую сборку, а не только в службу.

я есть служба с сохранением состояния, вызываемая службой без сохранения состояния, в .Net Standard Asp.net Core 2.0, работающая на Visual Studio 15.4. Я не могу заставить Service Remoting V2 работать.

Старый код в службе Stateful, которая работала для V1,недействительный больше не

  protected override IEnumerable<ServiceReplicaListener> CreateServiceReplicaListeners()
    {
        return new List<ServiceReplicaListener>()
            {
                new ServiceReplicaListener((context) =>this.CreateServiceRemotingListener(context))
            };

Я пытался следовать этомуруководство но пример длябез гражданства один.

Я пытался изменить код в этом безуспешно.

protected override IEnumerable<ServiceReplicaListener> CreateServiceReplicaListeners()
    {
        return new List<ServiceReplicaListener>()
            {
                new ServiceReplicaListener((c) =>new FabricTransportServiceRemotingListener(c, this))
            };
    }

Также нет никаких инструкций о том, как или где использовать этот код в учебнике.

var proxyFactory = new ServiceProxyFactory((c) =>
   {
       return new FabricTransportServiceRemotingClientFactory();
   });

Я застрял, кто-нибудь может показать мне, как заставить это работать?

Ответы на вопрос(1)

Решение Вопроса

В вашем состоянии службы, в методеCreateServiceReplicaListeners, используйте этот код:

protected override IEnumerable<ServiceReplicaListener> CreateServiceReplicaListeners()
{
    return this.CreateServiceRemotingReplicaListeners();
}

И в файле, который определяет вашу службу удаленного взаимодействияинтерфейс, Добавь это:

[assembly: FabricTransportServiceRemotingProvider(RemotingListener = RemotingListener.V2Listener, RemotingClient = RemotingClient.V2Client)]

(например, чуть нижеusing список пространств имен.)

Добавьте конечную точку:<Endpoint Name="ServiceEndpointV2" />

И перестроить клиент.

 LoekD24 нояб. 2017 г., 08:24
Создайте ServiceProxy, используя URL-адрес службы и ключ раздела (если с состоянием)docs.microsoft.com/en-us/azure/service-fabric/...
 Alex Marshall22 апр. 2018 г., 04:10
Я сделал это, и это все еще не работает. Этот ответ просто повторяет то, что в учебнике, упомянутом выше на docs.microsoft.com
 Maxim Alexeyev28 сент. 2018 г., 22:09
Важным моментом является то, что «[Assembly: FabricTransportServiceRemotingProvider (RemotingListener = RemotingListener.V2Listener, RemotingClient = RemotingClient.V2Client)]» также следует добавлять в клиентскую сборку, а не только в службу.
 Choco23 нояб. 2017 г., 05:16
Не могли бы вы дать некоторые подробности о том, как это вызвать после настройки? Как на стороне клиента.

Ваш ответ на вопрос