public async Task SeedAsync(ApplicationDbContext dbContext, IServiceProvider serviceProvider) { if (dbContext.Weets.Any()) { return; } var random = new Random(); var user = dbContext.Users.First(); for (var i = 0; i < 5; i++) { var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; var weet = new Weet() { Id = Guid.NewGuid().ToString(), Author = user, Content = new string( Enumerable.Repeat(chars, 200) .Select(s => s[random.Next(s.Length)]).ToArray()), }; await dbContext.Weets.AddAsync(weet); await dbContext.SaveChangesAsync(); } }
public async Task Create(WeetCreateModel model, ApplicationUser user) { var entity = new Weet() { Id = Guid.NewGuid().ToString(), Author = user, Content = model.Content, }; if (!string.IsNullOrWhiteSpace(model.Tags)) { entity.Tags = await this.ConvertToTags(entity.Id, model.Tags); } var imageName = Guid.NewGuid().ToString(); var imageUrl = await ApplicationCloudinary.UploadImage(this.cloudinary, model.Image, imageName); if (!string.IsNullOrEmpty(imageUrl)) { entity.Image = new Media() { Url = imageUrl, Name = imageName, Creator = user, }; var tagId = await this.tagsService.GetTagId("Images"); entity.Tags.Add(new WeetTag() { TagId = tagId, WeetId = entity.Id }); } await this.weetRepository.AddAsync(entity); await this.weetRepository.SaveChangesAsync(); }