void OnAddItemClicked (object sender, EventArgs e) { var todoItem = new TodoItem () { ID = Guid.NewGuid ().ToString (), Notes = string.Empty }; var todoPage = new TodoItemPage (); todoPage.BindingContext = todoItem; Navigation.PushAsync (todoPage); }
List<Amazon.SimpleDB.Model.Attribute> ToSimpleDBAttributes (TodoItem item) { return new List<Amazon.SimpleDB.Model.Attribute> () { new Amazon.SimpleDB.Model.Attribute () { Name = "Name", Value = item.Name }, new Amazon.SimpleDB.Model.Attribute () { Name = "Notes", Value = item.Notes }, new Amazon.SimpleDB.Model.Attribute () { Name = "Done", Value = item.Done.ToString () }, }; }
List<ReplaceableAttribute> ToSimpleDBReplaceableAttributes (TodoItem item) { return new List<ReplaceableAttribute> () { new ReplaceableAttribute () { Name = "Name", Value = item.Name, Replace = true }, new ReplaceableAttribute () { Name = "Notes", Value = item.Notes, Replace = true }, new ReplaceableAttribute () { Name = "Done", Value = item.Done.ToString (), Replace = true } }; }
List<Amazon.SimpleDB.Model.Attribute> ToSimpleDBAttributes (TodoItem item) { return new List<Amazon.SimpleDB.Model.Attribute> () { new Amazon.SimpleDB.Model.Attribute () { Name = "Name", Value = item.Name }, new Amazon.SimpleDB.Model.Attribute () { Name = "Notes", Value = item.Notes }, new Amazon.SimpleDB.Model.Attribute () { Name = "Done", Value = item.Done.ToString () }, // The users email address is used to identify data in SimpleDB new Amazon.SimpleDB.Model.Attribute () { Name = "User", Value = App.User.Email } }; }
public Task SaveTaskAsync(TodoItem item) { return storage.SaveTodoItemAsync(item); }
public Task DeleteTaskAsync(TodoItem item) { return storage.DeleteTodoItemAsync(item); }
public async Task DeleteTodoItemAsync (TodoItem todoItem) { try { var attributeList = ToSimpleDBAttributes (todoItem); var request = new DeleteAttributesRequest () { DomainName = tableName, ItemName = todoItem.ID, Attributes = attributeList }; await client.DeleteAttributesAsync (request); } catch (Exception ex) { Debug.WriteLine (@" ERROR {0}", ex.Message); } }
TodoItem FromSimpleDBAttributes (List<Amazon.SimpleDB.Model.Attribute> attributeList, string id) { var todoItem = new TodoItem (); todoItem.ID = id; todoItem.Name = attributeList.Where (attr => attr.Name == "Name").FirstOrDefault ().Value; todoItem.Notes = attributeList.Where (attr => attr.Name == "Notes").FirstOrDefault ().Value; todoItem.Done = Convert.ToBoolean (attributeList.Where (attr => attr.Name == "Done").FirstOrDefault ().Value); return todoItem; }