public override Task ExecuteAsync(dynamic p) { if (!CanExecute(p)) { return(Task.FromResult(false)); } // Create FavoriteEntity FavoriteEntity favoriteEntity = TableEntityFactory.CreateFavoriteEntity(p); if (favoriteEntity == null) { return(Task.FromResult(false)); } p.Entity = favoriteEntity; // Copies var entities = new List <FavoriteEntity> { favoriteEntity }; if (!_mediaType.Equals(LvConstants.MediaTypeOfAll)) { var copyEntity = favoriteEntity.CloneByJson(); copyEntity.RowKey = UriFactory.ReplaceMediaTypeOfRowKey(favoriteEntity.RowKey, MediaType.All); entities.Add(copyEntity); } p.Entities = entities.Cast <ITableEntity>().ToList(); return(Task.FromResult(true)); }
public async Task UploadTestTumblrs() { var uriFactory = new UriFactory(); var tableEntityFactory = new TableEntityFactory(uriFactory); var uploadBlobCommand = new UploadBlobFromStreamCommand(); var generateSCommand = new ResizeCommand(ResizeCommand.ScalingType.CropScaling, 128); var generateMCommand = new ResizeCommand(ResizeCommand.ScalingType.CropScaling, 300); var generateLCommand = new ResizeCommand(ResizeCommand.ScalingType.FitScaling, 1280); var createTumblrCommand = new CreateTumblrCommand { UriFactory = uriFactory, TableEntityFactory = tableEntityFactory }; var createTableEntitiesCommand = new CreateTableEntitiesCommand(); var command = new WriteTumblrCommand( _azureStorage, uploadBlobCommand, generateLCommand, generateMCommand, generateSCommand, createTumblrCommand, createTableEntitiesCommand); foreach (var testImage in GetTestImages()) { using (Stream stream = File.OpenRead(testImage)) { // upload dynamic pTumblr = new ExpandoObject(); // Blob pTumblr.Container = await _azureStorage.GetContainerReferenceAsync(LvConstants.ContainerNameOfImage); pTumblr.Stream = stream; pTumblr.BlobName = Path.GetFileName(testImage); // Create Tumblr pTumblr.PartitionKey = LvConstants.MediaTypeOfImage; pTumblr.TumblrText = new TumblrText { Text = "你也曾当过笨蛋,也曾试着当瞎子当聋子的去信任一个人,你也知道世界上最可悲的就是自我欺骗,但是人笨过傻过瞎过就够了,你更要懂得爱自己,而不是一直重蹈覆辙,还自以为多痴情。", Category = TumblrCategory.C2 }; // Table pTumblr.Table = await _azureStorage.GetTableReferenceAsync(LvConstants.TableNameOfTumblr); // Execute await command.ExecuteAsync(pTumblr); // Create Tumblr End } } }
public override Task ExecuteAsync(dynamic p) { if (!CanExecute(p)) { return(Task.FromResult(false)); } // Create CommentEntity var commentEntity = TableEntityFactory.CreateCommentEntity(p); if (commentEntity == null) { return(Task.FromResult(false)); } p.Entity = commentEntity; return(Task.FromResult(true)); }
public override Task ExecuteAsync(dynamic p) { if (!CanExecute(p)) { return(Task.FromResult(false)); } // Create TumblrEntity TumblrEntity tumblrEntity = TableEntityFactory.CreateTumblrEntity(p); if (tumblrEntity == null) { return(Task.FromResult(false)); } p.Entity = tumblrEntity; // Copies var entities = new List <TumblrEntity> { tumblrEntity }; if (!_tumblrText.Category.Equals(TumblrCategory.All)) { var copyEntity = tumblrEntity.CloneByJson(); copyEntity.RowKey = UriFactory.ReplaceTumblrCategoryOfRowKey(tumblrEntity.RowKey, TumblrCategory.All); entities.Add(copyEntity); } if (!tumblrEntity.PartitionKey.Equals(LvConstants.MediaTypeOfAll)) { var copyEntities = entities.CloneByJson <TumblrEntity>(); foreach (var copyEntity in copyEntities) { copyEntity.PartitionKey = LvConstants.MediaTypeOfAll; entities.Add(copyEntity); } } p.Entities = entities.Cast <ITableEntity>().ToList(); return(Task.FromResult(true)); }