Använder Jag förstår inte riktigt frågan, vad menar du med att "en variabel är en string/byte"? Det var det jag var ute efter! ;) Fick till det efter lite pillande :DKolla om en variabel är en string/byte
<code>
if(hämtaInst(strNamn,Encoding.Default.GetBytes(strStandard)).ToString()!="System.Byte[]")
{
return hämtaInst(strNamn,strStandard);
}
</code>
Finns det nåt bättre sätt (borde det väl finnas?)
- Mr TSv: Kolla om en variabel är en string/byte
Och svaret beror ju också helt på vad hämtaInst gör...
Om strStandard är deklarerad som string så innehåller den ju en sträng, eller? Om du anropar Encoding.Default.GetBytes(strStandard) så kommer den alltid returnera en byte[].
Om syftet är att kolla vilket datatyp något är så kan något följande exempel kanske passa, om inte så kanske någon annan har glädje av det:
<code>
object unknownType = new byte[100];
if(unknownType.GetType() == typeof(byte[]))
{
MessageBox.Show("1");
}
if(unknownType is byte[])
{
MessageBox.Show("2");
}
</code>
"GetType() == typeof(...)" och "is byte[]" uppför sig lite olika, men i ditt fall tror jag inte det spelar någon roll. "GetType() == typeof(...)" gör en exakt jämförelse medans "is byte[]" undersöker om unknownType kan uppföra sig som en byte[]. "is someType" kan användas för att se om en klass ärver från en viss klass, det behöver alltså inte vara en exakt match utan det räcker att unknownType ärver från someType.
/MattiasSv: Kolla om en variabel är en string/byte
(hämtaInst returnerar object)
Mr T @thomasa88.homeip.netSv: Kolla om en variabel är en string/byte
<code>
internal static string hämtaInstKrypt(string strNamn, string strStandard)
{
if(hämtaInst(strNamn,strStandard) is string) //sträng
{
sparaInstKrypt(strNamn,hämtaInst(strNamn,hämtaInst(strNamn,strStandard)).ToString());
}
//else
{
byte[] strTxt=(byte[])hämtaInst(strNamn,Encoding.Default.GetBytes(strStandard));
/*if(strTxt!="")
{*/
return Encoding.Default.GetString(dekryptera(strTxt));
/*}
else
{
return strStandard;
}*/
}
}
</code>