Azure表存储不添加新字段

本文关键字:字段 新字段 添加 存储 Azure | 更新日期: 2023-09-27 18:09:17

我在Azure表存储中创建了一个表,并使用派生自TableEntity的实体类添加了一些记录。在此之后,我向该类添加了另外两个属性,并尝试插入更多记录,但看起来新字段没有添加到存储中,只有旧字段被写入和读取。我错过什么了吗?我还需要做些什么来改变表格的布局吗?

Azure表存储不添加新字段

谢谢你的信息,但最后我发现问题是另一个。我使用Vs在类中创建属性,这样做Vs创建的属性添加了一个内部setter。在这种情况下,Azure存储客户端简单地忽略这些属性,不创建字段,不写入,不读取,根本不给出任何错误。删除内部关键字开始正常工作

首先,我想确保我理解了您的场景。通过添加两个属性修改了现有实体类,然后在表中添加了新实体。您无法看到两个新添加的属性,而只能更新/检索旧属性。如果这是您试图实现的场景,请检查以下内容。您应该能够添加新的属性。

  1. 在从TableEntity类派生实体的类中添加新属性。Optional1Optional2是您尝试添加的新属性。

     public class CustomerEntity : TableEntity
     {
            public CustomerEntity() { }
            public CustomerEntity(string lastName, string firstName)
            {
                this.PartitionKey = lastName;
                this.RowKey = firstName;
            }
            public string Email { get; set; }
            public string CellPhoneNumber { get; set; }
            public string Optional1 { get; set; }
            public string Optional2 { get; set; }    
        }
    }
    
  2. 确保设置了Optional1Optional2的值。参见下面的示例代码。

    var customer = new CustomerEntity(LastName, FirstName)
    { 
        Email = Email,
        CellPhoneNumber = cellPhoneNumber,
        Optional1 = optional1,
        Optional2 = optional2,
    }
    TableOperation insertOperation = TableOperation.Insert(customer);
    TableName.Execute(insertOperation);
    

注意:我没有编译上面的代码,所以可能有拼写错误等。

谢谢,昂山素季(Aung

在我的例子中,我定义的字段是可空的。尽管我为它们提供了值,但仍然没有创建字段。必须使它们不可为空,以便可以创建字段