コード例 #1
0
ファイル: SettingsController.cs プロジェクト: zzdxpq007/xms
 public SettingsController(IWebAppContext appContext
                           , ISettingService settingService
                           , ISettingFinder settingFinder)
     : base(appContext)
 {
     _settingService = settingService;
     _settingFinder  = settingFinder;
 }
コード例 #2
0
 public EntityPluginFileProvider(IAppContext appContext
                                 , IWebHelper webHelper
                                 , ISettingFinder settingFinder)
 {
     _appContext    = appContext;
     _webHelper     = webHelper;
     _settingFinder = settingFinder;
 }
コード例 #3
0
 public AttachmentCreater(IAppContext appContext
                          , IDataCreater dataCreater
                          , IWebHelper webHelper
                          , ISettingFinder settingFinder)
     : base(appContext)
 {
     _dataCreater   = dataCreater;
     _webHelper     = webHelper;
     _settingFinder = settingFinder;
 }
コード例 #4
0
ファイル: Configuration.cs プロジェクト: wkfff/reusable
        public Configuration([NotNull][ItemNotNull] IEnumerable <ISettingProvider> settingProviders, [NotNull] ISettingFinder settingFinder)
        {
            if (settingProviders == null)
            {
                throw new ArgumentNullException(nameof(settingProviders));
            }

            _providers     = settingProviders.ToList().ValidateWith(SettingProviderBouncer).ThrowIfInvalid();
            _settingFinder = settingFinder ?? throw new ArgumentNullException(nameof(settingFinder));
        }
コード例 #5
0
 public SolutionImporter(IAppContext appContext
                         , ISolutionService solutionService
                         , IWebHelper webHelper
                         , ISettingFinder settingFinder
                         , IServiceResolver serviceResolver)
 {
     _appContext      = appContext;
     _currentUser     = _appContext.GetFeature <ICurrentUser>();
     _solutionService = solutionService;
     _webHelper       = webHelper;
     _settingFinder   = settingFinder;
     _serviceResolver = serviceResolver;
 }
コード例 #6
0
 public LocalizedLabelController(IWebAppContext appContext
                                 , ILocalizedLabelService localizedLabelService
                                 , ISolutionService solutionService
                                 , ILanguageService languageService
                                 , ILocalizedLabelImportExport localizedLabelImportExport
                                 , IWebHelper webHelper
                                 , ISettingFinder settingFinder)
     : base(appContext, solutionService)
 {
     _localizedLabelService      = localizedLabelService;
     _languageService            = languageService;
     _localizedLabelImportExport = localizedLabelImportExport;
     _webHelper     = webHelper;
     _settingFinder = settingFinder;
 }
コード例 #7
0
ファイル: WebAppContext.cs プロジェクト: feilingdeng/xms
 public WebAppContext(IHttpContextAccessor httpContext
                      , IAuthenticationService authenticationService
                      , IOrgDataServer orgDataServer
                      , IOrganizationService organizationService
                      , ISettingFinder settingFinder
                      , ISystemUserRolesService systemUserRolesService
                      , ILocalizedTextProvider localizedTextProvider
                      , IUserPersonalizationService userPersonalizationService
                      )
 {
     HttpContext             = httpContext.HttpContext;
     _authenticationService  = authenticationService;
     OrgDataServer           = orgDataServer;
     _organizationService    = organizationService;
     _settingFinder          = settingFinder;
     _systemUserRolesService = systemUserRolesService;
     T = localizedTextProvider;
     _userPersonalizationService = userPersonalizationService;
     SetFeatures();
 }
コード例 #8
0
 public DataImportController(IWebAppContext appContext
     , IEntityFinder entityFinder
     , IAttributeFinder attributeFinder
     , IDataImporter dataImporter
     , IImportMapService importMapService
     , IImportFileService importFileService
     , IFileTemplateProvider fileTemplateProvider
     , IWebHelper webHelper
     , ISessionService sessionService
     , ISettingFinder settingFinder
     )
     : base(appContext)
 {
     _entityFinder = entityFinder;
     _attributeFinder = attributeFinder;
     _dataImporter = dataImporter;
     _importMapService = importMapService;
     _importFileService = importFileService;
     _fileTemplateProvider = fileTemplateProvider;
     _webHelper = webHelper;
     _sessionService = sessionService;
     _settingFinder = settingFinder;
 }
コード例 #9
0
ファイル: FormFileExtensions.cs プロジェクト: zzdxpq007/xms
        /// <summary>
        /// 上传文件
        /// </summary>
        /// <param name="file"></param>
        /// <param name="path"></param>
        /// <returns></returns>
        public static async Task <SaveFileResult> SaveAs(this IFormFile file, string path, ISettingFinder settingFinder, IWebHelper webHelper)
        {
            SaveFileResult result = new SaveFileResult();

            if (file == null)
            {
                result.IsSuccess = false;
                result.Status    = -1;
                result.Error     = "file is null";
            }
            else
            {
                string fileName = file.FileName;
                string fileExt  = Path.GetExtension(fileName);
                var    config   = settingFinder.Get <UploadSetting>();
                if (!config.FileExts.IsNotEmpty() && !config.FileExts.Split(';').Contains(fileExt, StringComparer.InvariantCultureIgnoreCase))
                {
                    result.IsSuccess = false;
                    result.Status    = -2;
                    result.Error     = "file extension is forbidden";
                }
                else
                {
                    long fileSize = file.Length;
                    if (fileSize > config.MaxSize * 1024)
                    {
                        result.IsSuccess = false;
                        result.Status    = -3;
                        result.Error     = $"file size is greater than {config.MaxSize}kb";
                    }
                }
                if (path.IsEmpty())
                {
                    string dirPath     = webHelper.MapPath("/upload/attachment/");
                    string name        = DateTime.Now.ToString(config.FormatName);//"yyMMddHHmmssfffffff"
                    string newFileName = name + fileExt;

                    path = dirPath + newFileName;
                }

                using (var stream = new FileStream(path, FileMode.Create))
                {
                    await file.CopyToAsync(stream).ConfigureAwait(false);
                }
                result.IsSuccess = true;
                result.FilePath  = path;
            }
            return(result);
        }
コード例 #10
0
 public WebResourceFinder(IAppContext appContext, ISettingFinder settingFinder, IWebResourceRepository webResourceRepository)
 {
     _appContext            = appContext;
     _webResourceRepository = webResourceRepository;
     _cacheService          = new Caching.CacheManager <Domain.WebResource>(_appContext.OrganizationUniqueName + "webresource", _appContext.PlatformSettings.CacheEnabled);
 }