Пример #1
0
        private void SeedFiles(FileUploadSystemDbContext context)
        {
            FileManipulator.GenerateStorage();

            if (context.Files.Any())
            {
                return;
            }

            var sampleData = this.GetSampleFiles("Cats");
            var admin      = context.Users.Where(u => u.UserName == "Administrator").FirstOrDefault();

            AddFilesToUser(context, sampleData, admin);

            var dir = new DirectoryEntity
            {
                Name       = "Directory Test",
                LocationId = -1,
                Owner      = admin,
                OwnerId    = admin.Id
            };

            admin.Files.Add(dir);
            context.SaveChanges();

            var innerDirectory = new DirectoryEntity
            {
                Name       = "Inner Directory Test",
                LocationId = dir.Id,
                Owner      = admin,
                OwnerId    = admin.Id
            };

            dir.FilesContained.Add(innerDirectory);
            context.SaveChanges();

            var someFileAgain = new BinaryFile
            {
                Name       = "someFileAgain" + Path.GetExtension(sampleData[0]),
                LocationId = innerDirectory.Id,
                Owner      = admin,
                OwnerId    = admin.Id,
                Size       = new FileInfo(sampleData[0]).Length,
                Type       = Path.GetExtension(sampleData[0])
            };

            innerDirectory.FilesContained.Add(someFileAgain);
            context.SaveChanges();

            FileManipulator.UploadFile(sampleData[0], someFileAgain.Id, Path.GetExtension(sampleData[0]));

            var anotherUSer = context.Users.Where(u => u.UserName == "AnotherUser").FirstOrDefault();
            var dogs        = this.GetSampleFiles("Dogs");

            AddFilesToUser(context, dogs, anotherUSer);
            context.SaveChanges();
        }