有条件的Xml反序列化
问题描述:
我有一类,我能够通过从SQL Server中获取XML有条件的Xml反序列化
public class personXML
{
public string lang{get;set;}
public string name_en{get;set;}
public string name_ar{get;set;}
}
反序列化我也有个人类
public class person
{
public string name {get;set;}
}
我想,如果LANG =” en“,那么person.name应该是personXML.name_en,如果lang =”ar“,那么person.name应该是personXML.name_ar。 我想连载personXML做出来,在人类再次反序列化 请帮助
答
你将不能够做到这一点wihtout自定义序列:https://msdn.microsoft.com/en-us/library/ty01x675(v=vs.110).aspx
但给你的问题,我会建议不同的方法。你可以在你的代码中保留personXML和person DTO。 在您的数据访问层中,您只能使用personXML。但是你公开知识库返回人员。
换句话说,您可以轻松实现序列化,并且可以添加一个抽象来管理personXML和person之间的转换到专用存储库。
希望它有帮助。
请分享一个测试代码,这会很有帮助 –
Google是你的朋友吧? https://msdn.microsoft.com/en-us/library/ff649690.aspx http://blog.gauffin.org/2013/01/11/repository-pattern-done-right/ – Ouarzy