System.String 方法

LINQ to SQL 不支持以下 String 方法。

一般情况下不支持的 System.String 方法

一般情况下不支持的 String 方法:

  • 区分区域性的重载(带有 CultureInfo / StringComparison / IFormatProvider 的方法)。

  • 带有或生成 char 数组的方法。

不支持的 System.String 静态方法

不支持的 System.String 静态方法
String.Copy(String)
String.Compare(String, String, Boolean)
String.Compare(String, String, Boolean, CultureInfo)
String.Compare(String, Int32, String, Int32, Int32)
String.Compare(String, Int32, String, Int32, Int32, Boolean)
String.Compare(String, Int32, String, Int32, Int32, Boolean, CultureInfo)
String.CompareOrdinal(String, String)
String.CompareOrdinal(String, Int32, String, Int32, Int32)
String.Format
String.Join

不支持的 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)进行连接或其他操作时,可能会返回意外结果。

  • 由于许多方法(例如ReplaceToLowerToUpper)以及字符索引器,对于TEXTNTEXT列和XML没有有效的翻译,正常翻译时会发生SqlExceptions。 对于这些类型,此行为被视为可接受的。 但是,所有字符串操作都必须与公共语言运行时(CLR)的VARCHARNVARCHARVARCHAR(max)NVARCHAR(max)语义匹配。

另请参阅