2013-03-20 20 views
2

我們的db正在經歷從int到bigint的遷移。在遷移的分區中,我在表中存儲了一個列名作爲bigint,在其他分區中存儲爲int(要遷移)。想知道是否可以使用單個數據上下文來查詢兩個數據庫。當我有dbml作爲bigint並在已將列名定義爲int的db->表中查詢時。我收到以下錯誤會將dbml更改爲intint爲int值工作

指定的轉換無效。在System.Data.SqlClient.SqlBuffer.get_Int64() 在System.Data.SqlClient.SqlDataReader.GetInt64(的Int32 I)

回答

1

你必須做一個解決辦法:正確聲明他們的真實數據類型的所有表。然後將它們轉換爲查詢的一部分。例如:

tableBigint.Select(x => x.ID) 
tableInt.Select(x => (long)x.ID) 

現在,您將能夠給他們(或任何你想與他們做),因爲該類型匹配,也反序列化的作品集。

+0

抱歉明白了,請您解釋一下。由於只有少數分區正在遷移,表名保持不變 – 2013-03-21 21:39:57