2013-03-22 35 views
0

這有點難以描述,但我會試一試。在CLR中僞裝字符串時奇怪的CLR結果

我有一些CLR代碼,我從SQL Server 2008中的UDF調用。主數據庫和包含CLR代碼和UDF的數據庫具有不同的排序規則。

在CLR代碼中,我操縱varchar字符串,例如轉換爲byte []數組並返回。

事情是,當再次轉換爲byte []數組abd時,它似乎在使用Master數據庫的排序規則,儘管如我所說,CLR代碼和UDF完全位於應用程序數據庫中並且沒有參考主數據庫。

有沒有辦法強制CLR代碼使用它所屬的數據庫的排序規則,而不是Master數據庫?

我希望這很清楚。

謝謝。

+2

如果你要顯示你正在使用的代碼,它會*真的*幫助。 – 2013-03-22 11:04:58

回答

0

.NET中的System.String不支持SQL排序 - 所有字符串都以Unicode格式存儲,所以您遇到的問題幾乎肯定會是byte []操作的結果。