2

Silverlight 4では、BinaryReaderにはReadDecimal()メソッドがないようです。BinaryReader.ReadDecimalのSilverlightの置き換え

反射板には、publicではなく、internalの可視性があることが示されています。

トリッキーまたはリフレクションでその1つを使用する以外に、誰でもそれを得るための良い回避策があります。それともこのすべてが計画の一部ですか?


別にエリカ:面白いこと、反射器はまた10のInternalsVisibleToAttribute Sは、Agであることを示しているmscorlib(私に悲しいことなし:D)、Iが想定、512+で外出バイトないための十分範囲を与えます最適化! Dは直接交換がありません

答えて

1

ますが、このように同じ結果を達成することができます:私はボブがあまりにもそこにあると確信している

// write it, assume bw = BinaryWriter 
var bits = decimal.GetBits(myDecimal); 
bw.Write(bits[0]); 
bw.Write(bits[1]); 
bw.Write(bits[2]); 
bw.Write(bits[3]); 

// read it, assume br = BinaryReader 
var bits = new int[4]; 
bits[0] = br.ReadInt32(); 
bits[1] = br.ReadInt32(); 
bits[2] = br.ReadInt32(); 
bits[3] = br.ReadInt32(); 
return new decimal(bits); 
+0

おかげで、それがうまくトリックをやります!なぜそれが一般的ではないのかという理由を知ることにはまだ興味があります... –