protected override object DoGetInstance(Type serviceType, string key) { if (serviceType == null) { throw new ArgumentNullException("serviceType"); } return key != null ? container.ResolveNamed(key, serviceType) : container.Resolve(serviceType); }