刚开始用xml存储东西的时候都是不断的在xml文件里面添加或者修改xml的节点,这个是很常见的做法,这方面的博客也很多我也就不介绍了。但其实在小批量存储的时候我们可以直接将对象存进xml/xaml,使用的时候将整个对象加载出来,操作完成后再保存下去,这种做法没有什么技术难点,但我只是觉得更加的面相对象,模型和存储可以分开,模型的接口可以暴露出来,让前端的或者后台的调用,而存储可以换成xml/xaml和数据库。这样的好处就不言而喻了。
一、创建仓库
1.仓库的接口及基类
/// <summary> /// Interface Repository /// </summary> public interface IRepository { /// <summary> /// Loads this instance. /// </summary> void Load(Type type); // 可以加载不同的类型,xml,xaml /// <summary> /// Saves this instance. /// </summary> void Save(); /// <summary> /// model /// </summary> object Model { get; set; }//我们要操作的对象 } /// <summary> /// Class RepositoryBase /// </summary> public abstract class RepositoryBase : IRepository { /// <summary> /// Loads this instance. /// </summary> public virtual void Load(Type type) { } /// <summary> /// Saves this instance. /// </summary> public virtual void Save() { } /// <summary> /// model /// </summary> /// <value>The model.</value> public object Model { get; set; } /// <summary> /// 存储模型文件 /// </summary> public string FileName { get; set; } }