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 排序规则,因而默认情况下将提供区分区域性和大小写的比较。 此行为不同于 .NET Framework 默认的区分大小写的语义。
当
LastIndexOf
返回 0 时,则说明相应的字符串为NULL
或找到的位置为 0。对长度固定的字符串(
CHAR
、NCHAR
)执行串联或其他运算时,可能会返回意外结果,原因是这些类型会自动在数据库中应用空白。由于许多方法(如
Replace
、ToLower
、ToUpper
)和字符索引器未实现对TEXT
或NTEXT
列以及 XML 的有效转换,因此,如果对它们进行正常转换,则会发生SqlExceptions
。 对这些类型而言,这种行为被视为可接受。 但是,所有字符串运算都必须符合VARCHAR
、NVARCHAR
、VARCHAR(max)
和NVARCHAR(max)
的公共语言运行库 (CLR) 语义。