我有一個動態加載的類型。變量部分是從db中的xml字段讀取的。例如。確保動態加載類型的向後兼容性
class SomeClass
{
public int Id {get; set;}
public string Name {get; set;}
public string Url {get; set;}
}
的名稱和URL的一部分被閱讀的
<element>
<name>Name</name>
<type>string</type>
</element>
<element>
<name>Url</name>
<type>string</type>
</element>
在類之後的XML部分池莉構建將動態加載:
class SomeClass
{
public int Id {get; set;}
public string Name {get; set;}
public string Url {get; set;}
public string FallbackUrl {get; set;}
}
從
<element>
<name>Name</name>
<type>string</type>
</element>
<element>
<name>Url</name>
< type>string</type>
</element>
<element>
<name>FallbackUrl</name>
<type>string</type>
</element>
如何向後兼容是否維護?意味着如果我稍後在課堂上進行擴展,我怎麼能保證當在較早版本的dbs上部署新版本時(有時可能是這樣)不會崩潰?
您能更清楚地瞭解您所關注的情況嗎?我對版本控制DTO等非常熟悉,但你的意圖還不清楚。 – 2012-03-06 14:58:04
只是爲了確保向後兼容性 - 意思是如果包含擴展類型的版本部署在較舊的數據庫上,它不會崩潰,並且只能使用較小的子集或屬性才能正常運行。 – Elena 2012-03-06 15:00:43
您是否正在反序列化Xml?或者只是讀取Xml並分配值?爲了獲得最佳結果和控制,請查看MSDN上的IXmlSerializable。 – IAbstract 2012-03-06 15:01:18