Существует множество примеров внедрения зависимостей для Wcf, но многие из них имеют дело с версиями Wcf до 4.0. У меня есть приложение, созданное с помощью Wcf 4 Rest, без файла .svc, которое в основном выглядит следующим образом.
public class RestService : IRestService
{
IUserRepository _userRepo;
public RestService(IUserRepository repo)
{
_repo = repo;
}
public UserModel GetUser(int id)
{
return _repo.GetUserById(id);
}
}
public interface IRestService
{
[OperationContract]
[WebInvoke(Method = "GET",
ResponseFormat = WebMessageFormat.Json,
UriTemplate = "/User/{id}",
BodyStyle = WebMessageBodyStyle.Bare)]
UserModel GetUserById(int id);
}
Как я уже сказал, нет файла SVC, целых девять ярдов. Просто это в файле global.asax
RouteTable.Routes.Add(new ServiceRoute("RestService", new WebServiceHostFactory(), typeof(RestService)));
Итак, я хочу использовать Castle Windsor для добавления UserRepository.
Каков наилучший способ настройки службы в этой реализации 4.0 для использования Castle Windsor?