我们正在运行一些无状态可靠服务,并且使用反向代理(http://localhost:19081/ {app} / {svc} / bleh)在服务到服务通信方面遇到性能问题。在没有详细介绍的情况下,我们正在研究如下所述的远程处理:https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-reliable-services-communication-remoting
但是,我很难弄清楚如何在服务类型类中公开API方法,因为它们目前存在于我们的控制器中。控制器,通过依赖注入,获取所需的存储库实例等等,所以我在如何完成这一工作的情况下转动我的工作,没有某种冗余实例或循环依赖。
我坐在这里盯着这个" PersonService.cs":
internal sealed class PersonService: StatelessService, IPersonService
{
public PersonService(StatelessServiceContext context)
: base(context)
{ }
...
public PersonResponse GetPersonFromDb()
{
//lost here :(
}
我的控制器,运行正常,有:
public PersonController(IPersonRepository personRepository)
{
_personRepository = personRepository;
}
...
public IActionResult GetPerson()
{
var personResponse = _dbRepository.GetPerson();
return new ObjectResult(personResponse);
}
d
答案 0 :(得分:0)
您是否无法将存储库传递给您的服务,与此相似?
public PersonService(StatelessServiceContext context, IPersonRepository personRepository)
: base(context)
{
_personRepository = personRepository;
}
public PersonResponse GetPersonFromDb()
{
var personResponse = _personRepository.GetPerson();
return personResponse;
}