Recuperare un particolare valore di campo dalla tabella Azure
-
29-09-2019 - |
Domanda
Il codice seguente genera sempre un'eccezione
....
DataServiceContext ctx = account.CreateCloudTableClient().GetDataServiceContext();
var val = (from t in ctx.CreateTable<MyClass>("TableName")
select new {testval = t.id}).FirstOrDefault();
Se leggo l'entità funziona benissimo:
var val = (from t in ctx.CreateTable<MyClass>("TableName")
select t).FirstOrDefault();
E 'impossibile leggere un solo campo (o pochi, io non voglio leggere entità) dalla tabella Azure?
Grazie in anticipo.
Aggiornamento:
Dati eccezione: System.Data.Services.Client.DataServiceQueryException.
Messaggio - "Si è verificato un errore durante l'elaborazione di questa richiesta."
Eccezione interna - Codice: "Uno degli ingressi di richiesta non è valido": il messaggio "InvalidInput"
Soluzione
Mi pare di ricordare che l'implementazione attuale supporta solo ottenere le entità piene e non supporta le classi anonime.
Un'altra opzione sarebbe quella di prendere l'entità completa e poi trasformarlo in un tipo anonimo. Fare nota che in questo caso in realtà si sta tirando entità piene e poi trasformandoli, con conseguente maggior consumo di larghezza di banda di quanto sarebbe effettivamente necessario.