public override Task ExecuteAsync(dynamic p) { if (!CanExecute(p)) { return(Task.FromResult(false)); } var partitionKey = _userId; var rowKey = UriFactory.CreateFavoriteRowKey(_mediaType, _rowKey); // Create FavoriteEntity ITableEntity favoriteEntity = new TableEntity(partitionKey, rowKey) { ETag = "*" }; p.Entity = favoriteEntity; // Copies var entities = new List <ITableEntity> { favoriteEntity }; if (!_mediaType.Equals(LvConstants.MediaTypeOfAll)) { entities.Add(new TableEntity(partitionKey, UriFactory.ReplaceMediaTypeOfRowKey(rowKey, MediaType.All)) { ETag = "*" }); } p.Entities = entities; return(Task.FromResult(true)); }