Konwersja typów pochodnych klas

0

Witam
mama dwie klasy A i B, klasa B dziedziczy po klasie A i rozszerza o dodatkowe atrybuty. Moje banalne pytanie to jak utworzyć obiekt klasy B z obiektu klasy A?

0

Musisz zrobić to sam. Przyjmując np. w konstruktorze klasy B obiekt typu A, w nim utworzyć nowy obiekt typu B i przepisać istniejące właściwości.

0

Odpowiadając na Twoje pytanie z postu to ClassB newClassB = new ClassB() wywołane w klasie A. Odpowiadając na pytanie z tytułu wątku : nie wiem o co Ci chodzi.

czytając post wyżej stwierdzam, że znowu nie zrozumiałem pytania :)_

0

`Dzięki Rev, faktycznie temat napisałem niejasno. Czyli trzeba będzie trochę porzeźbić. U mnie klasa bazowa ma ze 30 atrybutów i myślałem, że można trochę łatwiej

0

Niby możesz użyć refleksji i w pętli przepisać atrybuty/właściwości, ale nie powiedziałbym, że to będzie najlepsze rozwiązanie. 30 atrybutów to już bardzo dużo. Można by się też zastanowić czy w takim wypadku nie warto tych twoich klas zorganizować w jedną encję z jedną mapą tych atrybutów. No, ale żeby powiedzieć coś więcej wypadałoby również więcej wiedzieć na temat samego projektu.

0

W projekcie korzystającym z openaccessa telerikowego mam zamapowaną tabelę na klasę A, dla której stworzone są wszelkie metody do komunikacji z bazą. Na potrzeby edycji wymyśliłem dziedziczenie z A na moją klasę B, rozszerzoną o dodatkowe właściwości. Problem pojawia się, kiedy z bazy otrzymuję obiekt typu A i potrzebuję zamienić go na typ B, żeby dodać jakieś pola,wykonać kilka operacji z gui, po czym znów wrócę do typu A. Dziedziczenie wydało mi się najszybsze żeby to osiągnąć.

0

To może takie coś: http://valueinjecter.codeplex.com/ ?

1 użytkowników online, w tym zalogowanych: 0, gości: 1