代码之家  ›  专栏  ›  技术社区  ›  a1ex07

从Azure表中检索特定字段值

  •  0
  • a1ex07  · 技术社区  · 14 年前

    以下代码始终引发异常

    ....
    DataServiceContext ctx = account.CreateCloudTableClient().GetDataServiceContext();
    var val  = (from t in ctx.CreateTable<MyClass>("TableName") 
               select new {testval = t.id}).FirstOrDefault();
    

    如果我阅读实体,它会很好地工作:

    var val  = (from t in ctx.CreateTable<MyClass>("TableName") 
               select t).FirstOrDefault();
    

    仅仅从Azure表中读取一个字段(或少数字段,我不想读取实体)是不可能的吗?

    事先谢谢。


    更新:

    异常数据: System.Data.Services.Client.DataServiceQueryException。

    消息-“处理此请求时出错。”

    内部异常-代码:“invalidinput”,消息:“其中一个请求输入无效。”

    1 回复  |  直到 14 年前
        1
  •  2
  •   maartenba    14 年前

    我似乎记得当前的实现只支持获取完整的实体,不支持匿名类。

    另一个选择是获取完整的实体,然后将其转换为匿名类型。请注意,在这种情况下,您实际上是拉完整的实体,然后转换它们,从而导致比实际需要更多的带宽消耗。