예제 #1
0
 /// <summary>
 ///
 /// </summary>
 /// <typeparam name="TSource">新的类型</typeparam>
 /// <typeparam name="TReplaced">被替换的类型</typeparam>
 public void Replace <TSource, TReplaced>()
     where TSource : IFileStore
     where TReplaced : IFileStore
 {
     if (!FileStores.Contains(typeof(TReplaced)))
     {
         FileStores.Add(typeof(TSource));
     }
     else
     {
         FileStores.ReplaceOne(typeof(TReplaced), typeof(TSource));
     }
 }
예제 #2
0
 public void AddTop <T>() where T : IFileStore
 {
     FileStores.AddFirst(typeof(T));
 }
예제 #3
0
 public void AddLast <T>() where T : IFileStore
 {
     FileStores.AddLast(typeof(T));
 }
예제 #4
0
 public RawFileInfo GetFile(string fileName, string storeName)
 {
     return(FileStores
            .FirstOrDefault(s => s.StoreName == storeName)?.Get(fileName));
 }