Hvordan caster man et object med en rå int over i en int variabel
HejJeg forsøger at flytte returværdien fra en ExecuteScalar over i en int.
Men systemet giver mig en invalid cast. Dette skyldes at ExecuteScalar returnere en rå int og ikke som forventet et object.
Koden der gør dette vises her :
#code start
public int MdbExecuteScalar()
{
object intvar = MovieDbCommand.ExecuteScalar();
if (intvar != null)
{
return (int)intvar;
}
else
{
return 0;
}
}
#code slut
Hvordan for jeg den rå int værdi i objectet over i en int variabel ?
Jeg har også prøvet
#code start
int intvar = MovieDbCommand.ExecuteScalar();
#code slut
men her siger compileren at der ikke kan castes implicet fra object til int.
Det er også et andet aspect i denne problemstilling.
Da jeg kørte med Access så returnerede ExecuteScalar et object og således hvar der
ingen problemer med castingen. Problemet er først kommet da jeg gik over til MSSQLServer2000MSDE
Her returnere ExecuteScalar en rå integer som retur i objectet som så afføder ovenstående problematic.
Nu er jeg lidt i tvivl om hvilken vej jeg skal gå.
Er det en fejl at ExecuteScalar i MSSQLServer2000 returnerer en rå integer.
Eller er det bare sådan ExecuteScalar virker på en MSSQLServer, for så bliver jeg jo nødt til at
"hive" int værdien ud af objectet på en eller anden måde.
Hvad skal jeg gøre ?
