簡體   English   中英

無法執行Nhibernate查詢

[英]Cannot execute Nhibernate query

我收到以下Nhiberante錯誤,但不知道為什么:

無法執行查詢[選擇附件0_.AttachmentId作為Attachme1_9_,附件0_.Name作為Name9_,附件0_.IconUrl作為IconUrl9_,附件0_.UserId作為UserId9_,附件0_.AttachmentTypeId作為Attachme6_9_,附件0_.IsDeleted作為IsDeleted9_T,附件0_。 LocationId作為Attachment_Attachment附件0_中的LocationId9_,其中annex0_.DYNAMIC_TYPE ='Attachment'並且1 = 0] [SQL:選擇附件0_.AttachmentId作為Attachme1_9_,附件0_.Name作為Name9_,附件0_.IconUrl作為IconUrl9_,附件0_.UserchType作為UserId9_,作為Attachme6_9_,附件0_.IsDeleted作為IsDeleted9_,附件0_.ArrivalTime作為ArrivalT8_9_,附件0_.LocationId作為來自Attachment_Attachment附件0_的LocationId9_,其中附件0_.DYNAMIC_TYPE ='附件',並且1 = 0]

更新:

內部異常:

Failed to convert parameter value from a WhereSelectListIterator`2 to a Guid.

我的查詢:

x => locationsIds.Contains(x.LocationId)

locationsIds可能是通過調用Where返回的IEnumerable。 最簡單的解決方案是將其顯式轉換為列表:

var idsList = locationIds.ToList();
x => idsList.Contains(x.LocationId);

檢查InnerException 我敢肯定,它將指向您正確的地方。

我知道這里已經回答了這個特定問題,但是我也遇到了此異常(具有不同的列名),並且失敗的原因是我使用了錯誤的數據庫。 我已經向一個數據庫中添加了一個新表,但是在運行代碼時,我已將其配置為使用另一個數據庫。 一旦我使用了正確的數據庫,錯誤就消失了。

我希望這可以幫助別人!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM