У меня есть служба, которая выполняет вызовы API для внешнего приложения с использованием исполняющего домена.Поэтому, если я нахожусь в тестовом режиме, я звоню «http://localhost"», и если я нахожусь в производственном режиме, я бы хотел, чтобы он вызывал другой адрес. Пока у меня есть
public interface IMyService{
void DoStuff();
}
private string _url;
public class MyService : IMyService
{
public MyService(string ExecutingDomainAddress)
{
_url = ExecutingDomainAddress;
}
public void DoStuff()
{
var destination = _url + "/GetCustomers";
}
}
В моей конфигурации Unity IЯ определил мои Сервис и Контракт как
container.RegisterType<IMyService, MyService>();
Я хотел бы добавить текущий URL / адрес в конструктор Сервиса. Можно ли это сделать здесь? Так, например:
var theCurrenDomain = "http://localhost/MySite"; //I want this to be dynamically generated e.g. Request.Url.Authority
container.RegisterInstance<string>("ExecutingDomainAddress", theCurrenDomain, new PerThreadLifetimeManager());
container.RegisterType<IMyService, MyService>(new InjectionConstructor(new ResolvedParameter<string>("ExecutingDomainAddress")));
Как мне получить URL-адрес отсюда и применить его к переменной "theCurrentDomain"?