TableServiceContext和强类型表名

时间:2011-06-07 09:13:39

标签: azure azure-table-storage

我有一个从TableServiceContext派生的DocumentDataServiceContext。在该课程中,我有以下方法:

public DataServiceQuery<Document> Documents
{
    get
    {
        return this.CreateQuery<Document>("Documents");
    }
}

有没有办法摆脱传递给CreateQuery的字符串常量,而是获取CloudTableClient.CreateTablesFromModel(typeof(DocumentDataServiceContext))使用的表名?

1 个答案:

答案 0 :(得分:1)

没有。在一天结束时,CreateQuery()必须具有要查询的表名。您当然可以使用约定或反射来获取该表名称在另一个方法中的含义,但在某些时候必须将字符串传递给CreateQuery。

public DataServiceQuery<T> CreateQueryByConvention<T>()
{
     return this.CreateQuery<T>(typeof(T).ToString());
}