示例#1
0
        // 这里没有直接使用下面的Data实例,而是使用了上面的索引,
        // 是为了防止对象被DeepClone时把数据库也Clone了。
        // private EntityCollection _data = DataSet[_zone];

        public MemoryRepoProvider(TypeZone zone = null)
        {
            _zone = zone ?? TypeZone.Empty;
            if (!DataSet.ContainsKey(_zone))
            {
                DataSet.Add(_zone, new EntityCollection());
            }
        }
示例#2
0
        public Repository NewRepo(TypeZone zone = null)
        {
            var provider = SelectProvider(zone);

            if (provider == null)
            {
                throw new NotImplementedException(string.Format("不支持此类型‘{0}’的Provider", Conf.ProviderType.Name));
            }

            return(new Repository(provider));
        }
示例#3
0
 protected abstract IRepoProvider SelectProvider(TypeZone zone = null);