Tôi có một truy vấn LINQ to EntitiesTôi có thể sử dụng CAST bên trong truy vấn LINQ to Entities không?
From item In ctx.Items
Select new {
ListPrice = item.Cost/(1M - item.Markup)
};
Tôi có thể chỉ định để EF mà tôi muốn nó để áp dụng một cast
với giá niêm yết trước khi truy vấn và thể hóa nó ? Có cái gì đó như EntityFunctions.Cast
có thể? Hoặc tôi có thể sử dụng hàm ESQL cast
?
Tôi muốn LINQ để tạo ra một truy vấn SQL dọc theo những dòng
SELECT cast((Cost/(1 - Markup)) as decimal(10, 2)) AS ListPrice
Mục tiêu của tôi là để thoát khỏi một loạt các chính xác/quy mô các truy vấn. Bởi vì có phép trừ thập phân và phân chia, kết quả của phép toán là một số thập phân (38, 26)! Đó là cách nhiều hơn .NET có thể xử lý và nhiều hơn tôi cần.
Bạn không thể sử dụng thành viên 'Chuyển đổi'? –
@AmitKumarGhosh 'Convert.ToDecimal' không được nhận dạng bởi EF –
các chức năng duy nhất tôi biết là từ [SqlFunctions] (https://msdn.microsoft.com/en-us/library/system.data.objects.sqlclient.sqlfunctions % 28v = vs.110% 29.aspx). Diễn viên của bạn không có mặt trong các chức năng này. – tschmit007