예제 #1
0
 public string GetFilePathByRouteCard(string routeCard)
 {
     lock (LockObj)
     {
         using (FileStream fs = new FileStream(Config.WorksFileIndexesPath, FileMode.OpenOrCreate))
         {
             if (fs.Length != 0)
             {
                 WorkIndexes indexes        = (WorkIndexes)_serializer.Deserialize(fs);
                 var         firstOrDefault = indexes.WorkIndices.FirstOrDefault((index => index.RouteCard == routeCard));
                 if (firstOrDefault != null)
                 {
                     return(firstOrDefault.FileName);
                 }
             }
             return(string.Empty);
         }
     }
 }
예제 #2
0
 public string GenerateFilePathAndSave(Work work)
 {
     lock (LockObj)
     {
         using (FileStream fs = new FileStream(Config.WorksFileIndexesPath, FileMode.OpenOrCreate))
         {
             WorkIndexes indexes;
             if (fs.Length != 0)
             {
                 indexes = (WorkIndexes)_serializer.Deserialize(fs);
             }
             else
             {
                 indexes = new WorkIndexes();
             }
             var filePath = Config.WorksFolderPath + $"//{work.RouteCard} - {work.DrawingNumber}.xml";
             indexes.WorkIndices.Add(new WorkIndex(work.RouteCard, work.DrawingNumber, filePath));
             _serializer.Serialize(fs, indexes);
             return(filePath);
         }
     }
 }