實際上,在我沒有使用框架或LINQ之前,只需鍵入sql語句與Sqlcommand類,我鍵入insert into table values(N'sample')
實際上我不知道什麼是N,但它適用於中文和其他語言,否則,會插入一些問號。EntityFramework更新或插入中文或非英文文本
但是,當我使用EntityFramework,這種框架總是插入一些問號,我可以問如何解決這個問題。
N表示Unicode? 你能給我一個EntityFramework使用這種事情的例子嗎?
實際上,在我沒有使用框架或LINQ之前,只需鍵入sql語句與Sqlcommand類,我鍵入insert into table values(N'sample')
實際上我不知道什麼是N,但它適用於中文和其他語言,否則,會插入一些問號。EntityFramework更新或插入中文或非英文文本
但是,當我使用EntityFramework,這種框架總是插入一些問號,我可以問如何解決這個問題。
N表示Unicode? 你能給我一個EntityFramework使用這種事情的例子嗎?
確保在裝有用於中文的sqlserver的服務器上安裝了語言包。
這樣EF將保存unicode字符。
這解決了我的問題...從「????」文本到真正有效的字符串謝謝 – OldTrain
,我們只是改變了數據類型爲nchar()或nvarchar和它的工作。它能夠以除英語以外的任何語言存儲數據。
我對尼泊爾語有完全相同的問題。我必須將sqlserver的數據類型從varchar轉換爲nvarchar,然後在實體框架映射中刷新我的* .edmx文件。然後它運行良好。
VARCHAR(255)=>爲nvarchar(255)
VARCHAR(MAX)=>爲nvarchar(MAX)
在EDMX文件右鍵點擊該表映射和刷新。保存更改。
是的,你可以問...... :) – gdoron
順便說一句,我測試EF與希伯來文在它工作得很好。中文是否包含在unicode中? – gdoron
它可能取決於數據庫的外觀。如果您使用的是SQL Server - 您的列是nvarchar還是nchar?在EF中,字符串屬性需要將Unicode設置爲true。您是先使用CodeFirst還是數據庫/模型? – Pawel