Hej, För att det skall vara någon vits att returnera olika datatyper måste alla typerna ha samma basklass. ..alternativt implementera samma interface, och i det fallet sätter du det interfacet som returtyp Tack. Får inte det hela att fungera. Tänker jag fel? Borde det inte vara nåt i stil med (beror på vad du använder id till förståss) Finns det ingen motsvarighet för Templates från C++ eller Generics från Java? Generics i C# 2.0. Tack. Det bör inte vara något prefix på en class alls, möjligtvis ett suffix på en abstract klass i stil med "Base"Retunera olika datatyper från en abstract class
Håller på att skriva en generell klass för att affärslager.
Nedan kommer exempel på vad jag vill göra
<code>
public abstract class IBusinessGeneral
{
protected abstract "Här vill jag retunera olika objekt jag skapat" Get_specific(int id);
}
</code>
Min fråga blir följdaktligen:
Går det att retunera olika object från en abstract class?Sv: Retunera olika datatyper från en abstract class
Om alla typerna har samma basklass är det bara att ange basklassen som returtyp.Sv:Retunera olika datatyper från en abstract class
Sv:Retunera olika datatyper från en abstract class
Jo jag tänkte mig att alla klasser skulle ärva från en basklass typ, GeneralItem.
Inte riktigt fått det att fungera men får försöka lite till.
Tack ändå.Sv: Retunera olika datatyper från en abstract class
Min abstracta class
<code>
public abstract class IBusinessGeneral
{
protected const string ID = "id";
protected abstract GeneralItem Get_specific(int id);
}
public class GeneralItem
{
protected int? id = null;
public int? Id
{
get { return id; }
set { id = value; }
}
}
</code>
Kod som använder sig av IBusinessGeneral
<code>
public class BusinessUsers : IBusinessGeneral
{
protected override UserItem Get_specific(int id)
{
throw new Exception("The method or operation is not implemented.");
}
public class UserItem : GeneralItem
{
string firstname = string.Empty;
string lastname = string.Empty;
osv......
}
}
</code>Sv:Retunera olika datatyper från en abstract class
<code>
protected override GeneralItem Get_specific(int id)
{
return new UserItem;
}
</code>Sv: Retunera olika datatyper från en abstract class
Sv:Retunera olika datatyper från en abstract class
Kom innan Generics i Java ;) Dessutom är Generics i Java bara ett kompilatortrick, suger.
En annan kommentar, I som prefix en namnstandard är reserverat för interface, bör inte användas för abstracta klasser eller klasser överhuvudtaget.Sv: Retunera olika datatyper från en abstract class
Vad rekomenderar du för prefix på en abstract class?Sv:Retunera olika datatyper från en abstract class