Mamy projekt MVC z odniesieniami do usług WCF. Te odwołania dodały właściwość do każdego obiektu DTO i odpowiedzi, a teraz AutoFixture
nie tworzą anonimowych instancji tych typów.Ploeh AutoFixture nie może utworzyć instancji z System.Runtime.Serialization.ExtensionDataObject
przykład:
public partial class SearchResultsDto : object,
System.Runtime.Serialization.IExtensibleDataObject,
System.ComponentModel.INotifyPropertyChanged {
[System.NonSerializedAttribute()]
private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
[global::System.ComponentModel.BrowsableAttribute(false)]
public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
get {
return this.extensionDataField;
}
set {
this.extensionDataField = value;
}
}
}
Kod:
_fixture = new Fixture().Customize(new AutoMoqCustomization());
var dto = _fixture.CreateAnonymous<SearchResultsDto>();
Wyjątek
Ploeh.AutoFixture.ObjectCreationException: Ploeh.AutoFixture.ObjectCreationException: AutoFixture był w stanie utworzyć instancja z System.Runtime. Serialization.ExtensionDataObject, najprawdopodobniej z powodu nie ma konstruktora publicznego, jest abstrakcyjną lub niepubliczne typ ..
Pytanie: Czy istnieje sposób rejestrowania tego obiektu wewnątrz AutoFixture, tak że wystąpienie go jako null
lub cokolwiek innego, co pozwoliłoby mi wykonać CreateAnonymous
we wszystkich obiektach z właściwością ExtensionData
.
Od czasu AutoFixture 3.x ostatnia linia kodu wyzwala ostrzeżenie spowodowane przez to, że wywołanie procesora zostało oznaczone jako Przestarzałe. Aby go usunąć, zmień go na: nowy NoSpecimen() – dzendras