Ich habe zwei Klassen mit verschiedenen Konstruktoren.
Es gibt einen ParameterErzeuge Instanz für verschiedene Klassen mit verschiedenen Konstruktoren
public TagService(IRepositoryAsync<Tag> tagRespository):base(tagRespository)
{
_tagRespository = tagRespository;
}
Es gibt zwei Parameter.
public AdsService(IRepositoryAsync<Ads> iadsRepository,IUnitOfWork unitOfWork):base(iadsRepository)
{
this._iadsRepository = iadsRepository;
this._unitOfWork = unitOfWork;
}
Am Anfang habe ich unten verwendet, um die Klasse zu initialisieren.
//services have different constractors
Service = (TEntityService)System.Activator.CreateInstance(
typeof(TEntityService),
new object[] { _repository, _unitOfWork }
);
Aber es funktioniert nicht nur für einen Parameter. Gibt es einen besseren Weg für das obige Szenario? Ich möchte eine Methode erstellen, die das Erstellen einer anderen Klasse mit dem anderen Parameter im Konstruktor ermöglicht.
Wird Autofac in XUnit Core unterstützt? Könnten Sie mir einen einfachen Richtlinienlink geben? Danke –
Es unterstützt .net-Core, also funktioniert xunit auch. Dies ist ein guter Link zu beginnen mit: http://autofac.readthedocs.io/en/latest/getting-started/index.html – Julian