Mam klasy z tego konstruktora:Konstruktor z opcjonalnym parametrem jest niezgodny new() ograniczenie
public Currency(Guid? vcurrencyUI = null)
: base(vcurrencyUI)
{ }
i chcę skorzystać z tej klasy z new()
przymusu, ale pojawia się ten błąd:
'Currency' must be a non-abstract type with a public parameterless constructor in order to use it as parameter 'T' in the generic type or method ...
Gdybym podzielić konstruktor wszystko działa poprawnie:
public Currency(Guid? vcurrencyUI)
: base(vcurrencyUI)
{ }
public Currency()
: base()
{ }
dlaczego muszę podzielić c onstructor?
Odpowiedź Jims jest poprawna. Aby uzyskać bardziej szczegółowe spojrzenie na bardzo podobne pytanie, zobacz mój artykuł tutaj http://blog.coverity.com/2013/09/11/c-bug/ –