diff --git a/Common/Helpers/FileOperationsHelper.cs b/Common/Helpers/FileOperationsHelper.cs index 646a659..d556188 100644 --- a/Common/Helpers/FileOperationsHelper.cs +++ b/Common/Helpers/FileOperationsHelper.cs @@ -34,16 +34,22 @@ namespace RecurringIntegrationsScheduler.Common.Helpers /// /// File path /// Stream - public static Stream Read(string filePath) + public static Stream Read(string filePath, FileShare fileShare = FileShare.ReadWrite) { if (File.Exists(filePath)) { - return new FileStream(filePath, - FileMode.Open, - FileAccess.ReadWrite, - FileShare.ReadWrite, - 4096, - true); + try + { + return new FileStream(filePath, + FileMode.Open, + FileAccess.ReadWrite, + fileShare, + 4096, + true); + } + catch (IOException) + { + } } return null; } diff --git a/Job.Upload/Upload.cs b/Job.Upload/Upload.cs index 3863686..e0f4324 100644 --- a/Job.Upload/Upload.cs +++ b/Job.Upload/Upload.cs @@ -194,7 +194,7 @@ namespace RecurringIntegrationsScheduler.Job } fileCount++; - var sourceStream = _retryPolicyForIo.Execute(() => FileOperationsHelper.Read(dataMessage.FullPath)); + var sourceStream = _retryPolicyForIo.Execute(() => FileOperationsHelper.Read(dataMessage.FullPath, FileShare.None)); if (sourceStream == null) continue;//Nothing to do here sourceStream.Seek(0, SeekOrigin.Begin);