Не удается разрешить службу с помощью API AppHostBase.ResolveService<T> в ServiceStack 4
Я использую ASP.NET MVC 5 и пытаюсь разрешить несколько служб, используя пример:
var authService = AppHostBase.Resolve<AuthService>();
authService.RequestContext = System.Web.HttpContext.Current.ToRequestContext();
var response = authService.Authenticate(new Auth
{
UserName = model.UserName,
Password = model.Password,
RememberMe = model.RememberMe
});
или я тоже попробовал:
using (var helloService = AppHostBase.ResolveService<HelloService>())
{
ViewBag.GreetResult = helloService.Get(name).Result;
return View();
}
В первом случае мне нужно было RequestContext
впрыснул, поэтому я попробовал этот подход, и во втором случае я использовал пример, который, как я понимаю, имеет RequestContext
автоматически вводится через Funq
,
ResolveService
не удалось найти, когда я попробовал второй подход и первый подход RequestContext
не является действительным свойством. Я что-то упустил или в API произошли изменения?
1 ответ
Решение
Документация действительно не подходит для этого, так как больше нет ResolveService<T>
на AppHostBase
, Это должно быть обновлено из-за изменений в API.
Вы можете сделать это в ServiceStack v4 с MVC:
var authService = HostContext.Resolve<AuthService>();
...