Làm cách nào để tôi có thể viết giá trị này một cách đơn giản nhất bằng LINQ?Cách lấy giá trị lớn nhất của cột id duy nhất bằng cách sử dụng LINQ
SELECT MAX(Game_id) AS MaxValue
FROM Dim_Game
Làm cách nào để tôi có thể viết giá trị này một cách đơn giản nhất bằng LINQ?Cách lấy giá trị lớn nhất của cột id duy nhất bằng cách sử dụng LINQ
SELECT MAX(Game_id) AS MaxValue
FROM Dim_Game
Hãy thử context.Dim_Games.Max(g => g.Game_id);
bạn cũng có thể sử dụng một thủ tục lưu trữ như thế:
select ident_current('table_name')
bạn có thể sử dụng đoạn mã sau, nếu tăng sắc là trên
Convert.ToInt32(_entities.Database.SqlQuery("SELECT IDENT_CURRENT('table') + IDENT_INCR('table')", new object[0]).FirstOrDefault())
Nếu cột của bạn là không nullable và kết quả của bạn truy vấn là trống rỗng, bạn sẽ nhận được lỗi
"Các diễn viên để kiểu giá trị 'System.Int32' thất bại vì sự cụ thể hóa giá trị là null. Hoặc tham số chung loại quả hoặc truy vấn phải sử dụng một loại nullable."
Để tránh lỗi này bạn nên đúc cột nullable và kết quả hợp nhất với 0.
int max=(surveys.Max(g =>(int?)g.SurveyID) ?? 0);
Xem thêm chi tiết tại The cast to value type 'Int32' failed because the materialized value is null
Tôi nhận được: ''Project.Models.Dim_Game' không chứa định nghĩa cho 'Max'' –
Tên của thùng chứa thực thể EF tương ứng với bảng' Dim_Game' trong cơ sở dữ liệu là gì? – dasblinkenlight
Rất tiếc, những gì tôi đang nghĩ sao? .. – dasblinkenlight