80 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			C#
		
	
	
			
		
		
	
	
			80 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			C#
		
	
	
| using IRaCIS.Core.Domain.Share;
 | |
| using Microsoft.AspNetCore.Builder;
 | |
| using Microsoft.AspNetCore.Hosting;
 | |
| using Microsoft.Extensions.FileProviders;
 | |
| using System.IO;
 | |
| 
 | |
| namespace IRaCIS.Core.API
 | |
| {
 | |
|     public static class IRacisHostFileStore
 | |
|     {
 | |
| 
 | |
|         public static void UseIRacisHostStaticFileStore(this IApplicationBuilder app, IWebHostEnvironment env)
 | |
|         {
 | |
| 
 | |
|             var uploadPath = Path.Combine(Directory.GetParent(env.ContentRootPath.TrimEnd('\\')).FullName, StaticData.UploadFileFolder);
 | |
|             var dicomPath = Path.Combine(Directory.GetParent(env.ContentRootPath.TrimEnd('\\')).FullName, StaticData.TrialDataFolder);
 | |
| 
 | |
|             var systemDataFolder = Path.Combine(Directory.GetParent(env.ContentRootPath.TrimEnd('\\')).FullName, StaticData.SystemDataFolder);
 | |
| 
 | |
|          
 | |
|             if (!Directory.Exists(uploadPath))
 | |
|             {
 | |
|                 Directory.CreateDirectory(uploadPath);
 | |
|             }
 | |
| 
 | |
|             if (!Directory.Exists(dicomPath))
 | |
|             {
 | |
|                 Directory.CreateDirectory(dicomPath);
 | |
|             }
 | |
| 
 | |
|             if (!Directory.Exists(systemDataFolder))
 | |
|             {
 | |
|                 Directory.CreateDirectory(systemDataFolder);
 | |
|             }
 | |
|        
 | |
|             app.UseStaticFiles(new StaticFileOptions
 | |
|             {
 | |
|                 FileProvider = new PhysicalFileProvider(uploadPath),
 | |
|                 RequestPath = $"/{StaticData.UploadFileFolder}"
 | |
|             });
 | |
| 
 | |
| 
 | |
|             app.UseStaticFiles(new StaticFileOptions
 | |
|             {
 | |
|                 FileProvider = new PhysicalFileProvider(dicomPath),
 | |
|                 RequestPath = $"/{StaticData.TrialDataFolder}"
 | |
|             });
 | |
| 
 | |
|             app.UseStaticFiles(new StaticFileOptions
 | |
|             {
 | |
|                 FileProvider = new PhysicalFileProvider(systemDataFolder),
 | |
|                 RequestPath = $"/{StaticData.SystemDataFolder}"
 | |
|             });
 | |
| 
 | |
| 
 | |
|             #region 兼容之前的文档能查看
 | |
| 
 | |
|             //var comonPathPath = Path.Combine(Directory.GetParent(env.ContentRootPath.TrimEnd('\\')).FullName, StaticData.CommonFileFolder);
 | |
| 
 | |
|             //var systemNoticePath = Path.Combine(Directory.GetParent(env.ContentRootPath.TrimEnd('\\')).FullName, StaticData.SystemNoticeFolder);
 | |
| 
 | |
|             //if (!Directory.Exists(comonPathPath))
 | |
|             //{
 | |
|             //    Directory.CreateDirectory(comonPathPath);
 | |
|             //}
 | |
|             //app.UseStaticFiles(new StaticFileOptions
 | |
|             //{
 | |
|             //    FileProvider = new PhysicalFileProvider(comonPathPath),
 | |
|             //    RequestPath = $"/{StaticData.CommonFileFolder}"
 | |
|             //});
 | |
| 
 | |
|             #endregion
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
|         }
 | |
|     }
 | |
| }
 |