MSRS 1.5 ile birlikte DSSP protokolu üzerinde binary serileştirme (seriaization) kullanımı sağlanmıştı. Fakat binary serialization/intranode etkileşimi için enumerable veri tipleri kullanıldığında performansta büyük düşüş yaşandığı açığa çıktı. Hatayı MSRS ekibi buldu. Performans düşüşü Liste(veya dizi) birçok eleman içerdiğindeveya çok kez erişildiğinde fark edilebiliyor. Bu hata bir sonraki sürmde düzeltilecek fakat şimdilik workaroud olarak şu yolu izleyebilirsiniz.
1. Herbiri bir liste veya dizinin üyesi olan sınıfları tanımlayın
2. Sınıf tanımlamasında Microsoft.Dss.Core.IDssSerializable den kalıtım kullanın ve diğer tanımlamaları aşağıdaki şekilde tamamlayın.
using Microsoft.Dss.Core;
...
[DataContract()]
public class MySensorState
{
[DataMember]
public List<MyListElement> MyLists;
}
[DataContract]
public class MyListElement: IDssSerializable
{
…
#region IDssSerializable Members
object IDssSerializable.Clone()
{
throw new Exception("The method or operation is not implemented.");
}
void IDssSerializable.CopyTo(IDssSerializable target)
{
throw new Exception("The method or operation is not implemented.");
}
object IDssSerializable.Deserialize(System.IO.BinaryReader reader)
{
throw new Exception("The method or operation is not implemented.");
}
void IDssSerializable.Serialize(System.IO.BinaryWriter writer)
{
throw new Exception("The method or operation is not implemented.");
}
#endregion
}