public bool Insert(Feed feed) { var account = AzureTableExtensions.GetStorageAccount(); var client = account.CreateCloudTableClient(); var table = client.GetTableReference("Feed"); try { table.Insert(feed); } catch (StorageException ex) { if (ex.InnerException is WebException && ((HttpWebResponse)((WebException)ex.InnerException).Response).StatusCode == HttpStatusCode.Conflict) { return false; } throw; } return true; }
public IEnumerable<Post> GetForFeed(Feed feed) { var query = new TableQuery<Post>().Where(TableQuery.GenerateFilterCondition("PartitionKey", QueryComparisons.Equal, Post.CreateKey(feed.PartitionKey, feed.RowKey))); var posts = table.ExecuteQuery(query); return posts; }
public ActionResult New(FeedViewModel feedViewModel) { if (!ModelState.IsValid) return View(feedViewModel); var feed = new Feed(feedViewModel.UserName, feedViewModel.FeedName); var created = feeds.Insert(feed); if (created) { return RedirectToRoute("ViewFeed", new { userName = feedViewModel.UserName, feedName = feedViewModel.FeedName }); } ViewBag.IsDuplicate = true; return View(feedViewModel); }
public ActionResult New(FeedViewModel feedViewModel) { if (!ModelState.IsValid) return View(feedViewModel); var account = AzureTableExtensions.GetStorageAccount(); var client = account.CreateCloudTableClient(); var table = client.GetTableReference("Feed"); var feed = new Feed(feedViewModel.UserName.ToLower(), feedViewModel.FeedName.ToLower()); try { table.Insert(feed); } catch (StorageException ex) { if (ex.InnerException is WebException && ((HttpWebResponse) ((WebException) ex.InnerException).Response).StatusCode == HttpStatusCode.Conflict) { ViewBag.IsDuplicate = true; return View(feedViewModel); } throw; } return RedirectToRoute("ViewFeed", new { userName = feedViewModel.UserName, feedName = feedViewModel.FeedName}); }