我们知道Guid是16字节的数值,Decimal也是16字节的数值,Guid转换为Decimal?
我尝试把Guid的16字节提出,通过这16字节运算的结果为Decimal,但运算时,到256的11次方时还正确,256的12次方时出错,有什么方法可以转换呀?'!!尝试使用的代码。
private decimal GuidToDec(Guid Gid) 

 byte[][0] byts = Gid.ToByteArray; 
 byte byt; 
 bool isPlus; 
 if (byts(15) <= 127) { 
   isPlus = true; 
 } else { 
   isPlus = false; 
   foreach (int byt in byts) { 
     byt = 255 - byt; 
   } 
 } 
 decimal Dec; 
 int i = -1; 
 foreach (int byt in byts) { 
   i += 1; 
   Dec = Dec + GuidToDecSqrt(i) * byt; 
 } 
 if (!(isPlus)) { 
   return -Dec; 
 } else { 
   return Dec; 
 } 
} private decimal GuidToDecSqrt(int Sqrt) 

 int i; 
 decimal Dec = 1; 
 if (Sqrt > 0) { 
   for (int i = 0; i <= Sqrt - 1; i++) { 
     Dec = decimal.Multiply(Dec, 256); 
   } 
   return Dec; 
 } else { 
   return Dec; 
 } 
}