[英]Cannot apply operator '==' to type 'System,.Nullabe<decimal>' and 'System.Nullable<double>' Error
我試圖了解為什么下面的以下方法會引發此錯誤。 如果有人能幫助或指出我正確的方向,我將不勝感激。
public List<Data> GetResults(string manufacturer, int? vehicle, double? engine )
{
var results =c ontext.Data.Where(x => x.Name == manufacturer)
.Where(x => x.ModelId == model)
.Where(x => x.EngineLitreCapacity == engine) // << error occurs on this line!
.GroupBy(x => x.EngineLitreCapacity)
.Select(x => x.FirstOrDefault())
.ToList();
}
我做錯了什么,我將如何解決上述查詢? 謝謝
EngineLitreCapacity
似乎是一個decimal?
而你的engine
是double?
. 如果沒有強制轉換,這些變量是不可比較的。
簡單的解決方案是使engine
成為decimal?
. 這可能會導致稍后的投射問題,您必須解決這些問題。 只施放double?
絕對是個壞主意double?
因為它的精度可能會導致方程失敗。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.