Sto cercando di ottenere dati che sono conservati nella cache. Ma lancia un'eccezione sulla riga "select new FilterSsrsLog". Eccezione: Questa funzione può essere invocata solo da LINQ to Entitieseccezione di linq: questa funzione può essere invocata solo da LINQ alle entità
List<ExecutionLog3> reportServerDB = UpdateCache();
var reportLog = (from r in reportServerDB
orderby r.TimeStart descending
where ((model.reportName == null ? true : r.ItemPath.Contains(model.reportName)) &&
(model.reportFolder == null ? true : r.ItemPath.Contains(model.reportFolder)) &&
(r.TimeStart >= startDateTime) &&
(r.TimeStart <= endDateTime)
)
select new FilterSsrsLog
{
UserName = r.UserName,
ReportName = r.ItemPath,
ReportFolder = r.ItemPath,
Format = r.Format,
Parameters = r.Parameters,
TimeStart = r.TimeStart,
TimeEnd = r.TimeEnd,
TotalTime = EntityFunctions.DiffMilliseconds(r.TimeStart, r.TimeEnd)
});
Se rimuovo "Seleziona nuovo FilterSsrsLog" blocco di codice e scrivere "selezionare r" funziona. Ma ho bisogno solo di quelle colonne, quindi cosa posso fare per risolvere questo problema?
Non sarebbe TotalMilliseconds? –
@ It'sNotALie. Ah, hai ragione, dovrebbe essere "TotalMilliseconds". Grazie! – dasblinkenlight
@dasblinkenlight Grazie mille, funziona. –