簡體   English   中英

實體框架無法連接Oracle中的Enum列

[英]Entity Framework cannot concat Enum column in Oracle

我將EntityFramework 6.1與Oracle一起使用時,我需要編寫查詢以在預測表達式的地方串聯兩列。

我用下面的代碼:

/* t.Col1 : string , t.Col2: Enum */
db.Table1.Where(t => t.Col1 + " " + t.Col2 == "SomeValue");

但是我得到了OracleException:ORA-12704:字符集不匹配錯誤。 我想在從數據庫中獲取數據之前應用條件。 因此,有人知道我該如何處理這個問題?

我已經看到了這個主題 ,但是如果其中一個列是Enum,則該解決方案將不起作用。

我檢查了命令文本,發現嘗試將空字符轉換為NCLOB

THEN N'' ELSE TO_NCLOB

所以我用以下解決方案更新了@solidau答案:

command.CommandText = command.CommandText.Replace("N''", "''").Replace("THEN '' ELSE TO_NCLOB", "THEN N'' ELSE TO_NCHAR");

暫無
暫無

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

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