示例#1
0
        public FileSpecifications(IFileSpecificationProvider defaultFallBackProvider,
                                  params IFileSpecificationProvider[] fileSpecProvider)
        {
            var defaultProviders = new List <IFileSpecificationProvider>
            {
                new ImageSpecificationProvider(),
                new VideoSpecificationProvider(),
                new AudioSpecificationProvider(),
                new PdfSpecificationProvider(),
                new DefaultFileSpecificationProvider()
            };

            foreach (var provider in fileSpecProvider.Union(defaultProviders).Distinct())
            {
                _fileSpecifiations.Add(provider);
            }

            _defaultFallbackProvider = defaultFallBackProvider;
        }