System.String 方法 (LINQ to SQL)
LINQ to SQL 不支持以下 String 方法。
一般情况下不支持的 System.String 方法
一般情况下不支持的 String 方法:
区分区域性的重载(带有 CultureInfo/StringComparison/IFormatProvider 的方法)。
带有或生成 char 数组的方法。
不支持的 System.String 静态方法
不支持的 System.String 静态方法 |
---|
String.Compare(String, Int32, String, Int32, Int32, Boolean) |
String.Compare(String, Int32, String, Int32, Int32, Boolean, CultureInfo) |
不支持的 System.String 非静态方法
不支持的 System.String 非静态方法 |
---|
与 .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) 语义。