I am trying to update an entry in Azure table storage. Function:
public void SaveBug(DaBug bug) { bug.PartitionKey = "bugs"; bug.Timestamp = DateTime.UtcNow; if (bug.RowKey == null || bug.RowKey == string.Empty) { bug.RowKey = Guid.NewGuid().ToString(); _context.AddObject(c_TableName, bug); } else { _context.AttachTo(c_TableName, bug); _context.UpdateObject(bug); } _context.SaveChanges(); }
If this is a new entry (path "bug.RowKey == null"), then it works fine. If it is updating an existing object, then “AttachTo” and “UpdateObject” will work, but when it goes to “SaveChanges”, it will throw an exception “One of the request inputs is invalid”.
Persistent class:
[DataContract] [DataServiceKey("RowKey")] public class DaBug { [DataMember] public bool IsOpen { get; set; } [DataMember] public string Title { get; set; } [DataMember] public string Description { get; set; } [DataMember] public string SubmittedBy { get; set; } [DataMember] public DateTime SubmittedDate { get; set; } [DataMember] public string RowKey { get; set; } public DateTime Timestamp { get; set; } public string PartitionKey { get; set; } }
Does anyone know what the problem is?
Thanks for any help.
source share