System.String 方法
LINQ to SQL 不支援下列String方法。
一般不支援的 System.String 方法
一般不支援的 String 方法:
文化特性感知多載 (採用
CultureInfo
/StringComparison
/IFormatProvider
的方法)。取用或產生
char
陣列的方法。
不支援的 System.String 靜態方法
不支援的 System.String 非靜態方法
不支援的 System.String 非靜態方法 |
---|
String.IndexOfAny(Char[]) |
String.Split |
String.ToCharArray() |
String.ToUpper(CultureInfo) |
String.TrimEnd(Char[]) |
String.TrimStart(Char[]) |
與 .NET 的差異
查詢不會考慮伺服器上可能作用中的 SQL Server 定序 (Collation),因此預設會提供區分文化特性、但不區分大小寫的比較。 這個行為與 .NET Framework 的預設區分大小寫語意 (Semantics) 不同。
當
LastIndexOf
傳回 0 時,表示字串是NULL
或找到的位置是 0。固定長度字串 (
CHAR
、NCHAR
) 上的串連或其他作業可能會傳回未預期的結果,原因是這些型別已自動將填補套用至資料庫中。因為許多方法 (如
Replace
、ToLower
、ToUpper
和字元索引子 (Indexer)) 都沒有TEXT
或NTEXT
資料行和 XML 的有效轉譯,所以如果正常轉譯,則會發生SqlExceptions
。 對這些型別而言,這個行為是可接受的行為。 不過,所有字串作業都必須符合VARCHAR
、NVARCHAR
、VARCHAR(max)
和NVARCHAR(max)
的 Common Language Runtime (CLR) 語意。