public static ExpenseItemEntity ToTableEntity(this ExpenseItem model, string expensePartitionKey, string expenseId) { var expenseItem = new ExpenseItemEntity { PartitionKey = expensePartitionKey, RowKey = KeyGenerator.ExpenseItemEntityRowKey(expenseId, model.Id), Amount = model.Amount, Description = model.Description, HasReceipt = model.Receipt != null && model.Receipt.LongLength != 0 }; return(expenseItem); }
public static ExpenseItem ToModel(this IExpenseItemEntity entity) { var expenseItem = new ExpenseItem { Id = new StorageKey(KeyGenerator.ExpenseItemEntitySuffix(entity.RowKey)).InvertedTicks, Amount = entity.Amount.HasValue ? entity.Amount.Value : 0, Description = entity.Description, ReceiptUrl = null, ReceiptThumbnailUrl = null }; if (entity.HasReceipt.HasValue && entity.HasReceipt.Value) { var imageName = expenseItem.Id + ".jpg"; var account = CloudConfiguration.GetStorageAccount(AzureConnectionStrings.DataConnection); string thumbnail = Path.Combine(account.BlobEndpoint.ToString(), AzureStorageNames.ReceiptContainerName, "thumbnails", imageName); string receipt = Path.Combine(account.BlobEndpoint.ToString(), AzureStorageNames.ReceiptContainerName, imageName); expenseItem.ReceiptThumbnailUrl = new Uri(thumbnail); expenseItem.ReceiptUrl = new Uri(receipt); } return(expenseItem); }
public static ExpenseItem ToModel(this IExpenseItemEntity entity) { var expenseItem = new ExpenseItem { Id = new StorageKey(KeyGenerator.ExpenseItemEntitySuffix(entity.RowKey)).InvertedTicks, Amount = entity.Amount.HasValue ? entity.Amount.Value : 0, Description = entity.Description, ReceiptUrl = null, ReceiptThumbnailUrl = null }; if (entity.HasReceipt.HasValue && entity.HasReceipt.Value) { var imageName = expenseItem.Id + ".jpg"; var account = CloudConfiguration.GetStorageAccount(AzureConnectionStrings.DataConnection); string thumbnail = Path.Combine(account.BlobEndpoint.ToString(), AzureStorageNames.ReceiptContainerName, "thumbnails", imageName); string receipt = Path.Combine(account.BlobEndpoint.ToString(), AzureStorageNames.ReceiptContainerName, imageName); expenseItem.ReceiptThumbnailUrl = new Uri(thumbnail); expenseItem.ReceiptUrl = new Uri(receipt); } return expenseItem; }