2012-12-14 15 views
1

我試圖將舊的SQL Server數據庫(在實體框架4中創建)遷移到SQL CE 4.我搬到了一切,重新架構和插入數據到SDF文件,但現在當我嘗試推出我的網站,我得到這個錯誤:SQL CE 4錯誤:無法在WHERE,HAVING,GROUP BY,ON或IN子句中使用ntext和圖像數據類型

The ntext and image data types cannot be used in WHERE, HAVING, GROUP BY, ON, or IN clauses, except when these data types are used with the LIKE or IS NULL predicates.

我已經訪問了幾個鏈接,它們都鏈接到一個Microsoft修補程序,該修補程序用於SQL CE 3.5。我正在運行SQL CE 4並找不到任何相關的東西。

更新:我發現了一些可能的代碼優先方法的解決方案,但我的數據庫是模型優先的。

+0

變化從NTEXT到nvarchar的列數據類型(4000) – ErikEJ

+0

,但我有超過4000個字符(它可以任意長) –

+0

你找到答案的博客文章?我碰到了與SQL CE 4 – Pepedou

回答

1

我剛剛遇到了Entity Framework和SQL CE的這個問題。它無法生成動態SQL語句,該語句按圖像列過濾結果。

對於我來說,這個代碼不及格(類型爲byte []的令牌存在):

var dataStore = new DataStore(); 
var document = dataStore.Documents.SingleOrDefault(d => d.Token == token); 

最簡單的方法,我得到了它的工作是文件第一次加載到內存中的一個列表,過濾前它。這對我來說很好,因爲這個列表永遠不會很大。

var dataStore = new DataStore(); 
var documents = dataStore.Documents.ToList(); 
var document = documents.SingleOrDefault(d => d.Token.SequenceEqual(token)); 
相關問題