Я изучаю SF, и теперь я пытаюсь создать консольный клиент для службы без состояния.Консольный клиент приложения для службы Fabric Stateless Service
пытался следовать инструкциям здесь: https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-connect-and-communicate-with-services
и добавил это к моему StatelessService класса
public interface IMyService : IService
{
Task<string> HelloWorldAsync();
}
и простой реализации
public Task<string> HelloWorldAsync()
{
return Task.FromResult("HELLO FROM SERVICE!");
}
Остальное без изменений.
В моем приложении у меня есть консоль
IMyService helloWorldClient = ServiceProxy.Create<IMyService>(
new Uri("fabric:/RestGateway/StatelessGateway1"));
string message = await helloWorldClient.HelloWorldAsync();
служба развернута в моем локальном кластере и, кажется, работает нормально (зеленая кнопка), но я получаю исключение при вызове helloWorldClient.HelloWorldAsync().
Любая идея, как я могу это исправить?
OK Целью было создать действительно простой клиент (т. е. консольное приложение), что в конечном итоге заставит SF Actors реагировать на входящие сообщения. Я думал, что создание StatelessService было самым простым реле «в» кластере. Будет ли проще создать REST-API-сервис и вызвать его с клиента? Я просто хочу простой путь в кластер для тестирования/обучения. –
Да, если клиент может находиться вне кластера, вам нужно использовать альтернативные способы, о которых я говорил. В зависимости от ваших требований, знаний и предпочтений, любой будет делать. – LoekD