Come posso scrivere questo nel modo più semplice utilizzando LINQ?Come ottenere il valore massimo di una colonna ID univoco tramite LINQ
SELECT MAX(Game_id) AS MaxValue
FROM Dim_Game
Come posso scrivere questo nel modo più semplice utilizzando LINQ?Come ottenere il valore massimo di una colonna ID univoco tramite LINQ
SELECT MAX(Game_id) AS MaxValue
FROM Dim_Game
Prova context.Dim_Games.Max(g => g.Game_id);
è anche possibile utilizzare una stored procedure del genere:
select ident_current('table_name')
è possibile utilizzare codice seguente, se incremento di identità è il
Convert.ToInt32(_entities.Database.SqlQuery("SELECT IDENT_CURRENT('table') + IDENT_INCR('table')", new object[0]).FirstOrDefault())
Se la colonna non è nullable e il risultato della ricerca si è vuota, verrà visualizzato l'errore
"Il cast al tipo di valore 'System.Int32' riuscita perché il valore di materializzato è nullo. O parametro generico del tipo di risultato o la query devono utilizzare un tipo nullable."
Per evitare l'errore si dovrebbe lanciare colonna nullable e il risultato coalizzarsi con 0.
int max=(surveys.Max(g =>(int?)g.SurveyID) ?? 0);
Vedi i dettagli in The cast to value type 'Int32' failed because the materialized value is null
ottengo:? ' 'Project.Models.Dim_Game' non contiene una definizione per 'Max'' –
Qual è il nome del contenitore di entità EF che corrisponde a' tabella Dim_Game' nel database – dasblinkenlight
Ops, cosa stavo pensando? .. – dasblinkenlight