我有以下方法進行序列化的類的列表磁盤:如何最佳序列化實體在C#中的列表
private static void Serialize(List<CcmAlarmUalUsl> entityList)
{
try
{
using (Stream stream = File.Open("CcmAlarmUalUsl.dat", FileMode.Create))
{
BinaryFormatter bin = new BinaryFormatter();
bin.Serialize(stream, entityList);
}
}
catch (IOException)
{
}
}
實體類我想序列如下所示:
public class CcmAlarmUalUsl
{
public string SubId { get; set; }
public System.DateTime TimeOfAlarm { get; set; }
public int AlarmType { get; set; }
}
我的Serialize類是將實體列表序列化到磁盤的最佳方式嗎?這並不需要人類可讀。它將被應用程序嚴格使用,作爲內部緩存的存儲手段。沒有數據庫存儲是必要的。
我也有點擔心什麼時候修改CcmAlarmUalUsl的結構。我可以添加屬性到類的最後。這將如何影響現有的緩存項目?
什麼是'lizards1'?你是否認爲這是'entityList'? –
您對序列化數據的要求是什麼?如果你的要求是序列化的數據是人類可讀的,那麼沒有BinaryFormatter不是最好的解決方案,XmlSerializer可能是一個更好的選擇。你的代碼也不是很清楚,你序列化了一個名爲'lizards1'的變量,但函數接受了enityList,它是你想要序列化的entityList? –
對不起 - lizards1是一個錯字。 – Hosea146