0
我有一個從基類繼承的繼承的設置類,我想的(de)分別連載(例如)如何停止使用Protobuf-Net繼承並直接使用繼承類?
[ProtoContract]
[ProtoInclude(1, typeof(GlobalSettings))]
[ProtoInclude(2, typeof(UserSettings))]
public class BaseSettings
{
}
[ProtoContract]
public class GlobalSettings: BaseSettings
{
[ProtoMember(1)]
public string TempPath { get; set; }
}
[ProtoContract]
public class UserSettings: BaseSettings
{
[ProtoMember(1)]
public int UILanguage { get; set; }
}
唯一的問題是我不能承受失去的配置,可它的方式來完成如果UserSettings不再繼承自BaseSettings並且移動到另一個程序集以獨立使用,則(de)序列化仍然可能(通過某種轉換或不轉換)而無需訪問GlobalSettings類?
我試圖創建另一個基類與[ProtoContract]只有一個屬性[ProtoMember(1)] UserSettings但它沒有工作。創建一個只有[ProtoInclude(1,typeof(UserSettings)]的虛擬基類,因爲你沒有提到它,所以我猜沒有ProtoContract選項會在不添加虛擬基類的情況下「僞造」繼承,謝謝你的幫助。 – too