Metode runtime bahasa umum ke Pemetaan Fungsi Kanonik
Entity Framework menyediakan seperangkat fungsi kanonis yang mengimplementasikan fungsionalitas yang umum di banyak sistem database, seperti manipulasi string dan fungsi matematika. Hal ini memungkinkan pengembang untuk menargetkan berbagai sistem database. Saat dipanggil dari teknologi kueri, seperti LINQ ke Entitas, fungsi kanonis ini diterjemahkan ke fungsi penyimpanan terkait yang benar untuk penyedia yang digunakan. Hal ini memungkinkan pemanggilan fungsi diekspresikan dalam bentuk umum di seluruh sumber data, memberikan pengalaman kueri yang konsisten di seluruh sumber data. Operator AND, OR, NOT, dan XOR bitwise juga dipetakan ke fungsi kanonis ketika operand adalah jenis numerik. Untuk operand Boolean, operator AND, OR, NOT, dan XOR bitwise menghitung operasi AND, OR, NOT, dan XOR logis dari operand mereka. Untuk informasi selengkapnya, lihat Fungsi Kanonis.
Untuk skenario LINQ, kueri terhadap Entity Framework melibatkan pemetaan metode CLR tertentu ke metode pada sumber data yang mendasarinya melalui fungsi kanonis. Panggilan metode apa pun dalam kueri LINQ ke Entitas yang tidak secara eksplisit dipetakan ke fungsi kanonis akan menyebabkan pengecualian NotSupportedException runtime bahasa umum ditampilkan.
Pemetaan Metode System.String (Statik)
Metode System.String (statik) | Fungsi kanonis |
---|---|
System.String Concat(String str0 , String str1 ) |
Concat(str0 , str1 ) |
System.String Concat(String str0 , String str1 , String str2 ) |
Concat(Concat(str0 , str1 ), str2 ) |
System.String Concat(String str0 , String str1 , String str2 , String str03 ) |
Concat(Concat(Concat(str0 , str1 ), str2 ), str3 ) |
Boolean Equals(String a , String b ) |
= operator |
Boolean IsNullOrEmpty(String value ) |
(IsNull(value )) OR Length(value ) = 0 |
Boolean op_Equality(String a , String b ) |
= operator |
Boolean op_Inequality(String a , String b ) |
!= operator |
Microsoft.VisualBasic.Strings.Trim(String str ) |
Trim(str ) |
Microsoft.VisualBasic.Strings.LTrim(String str ) |
Ltrim(str ) |
Microsoft.VisualBasic.Strings.RTrim(String str ) |
Rtrim(str ) |
Microsoft.VisualBasic.Strings.Len(String expression ) |
Length(expression ) |
Microsoft.VisualBasic.Strings.Left(String str , Int32 Length ) |
Left(str , Length ) |
Microsoft.VisualBasic.Strings.Mid(String str , Int32 Start , Int32 Length ) |
Substring(str , Start , Length ) |
Microsoft.VisualBasic.Strings.Right(String str , Int32 Length ) |
Right(str , Length ) |
Microsoft.VisualBasic.Strings.UCase(String Value ) |
ToUpper(Value ) |
Microsoft.VisualBasic.Strings.LCase(String Value) | ToLower(Value ) |
Pemetaan Metode System.String (Instans)
Metode System.String (instans) | Fungsi kanonis | Catatan |
---|---|---|
Boolean Contains(String value ) |
this LIKE '%value %' |
Jika value bukan konstanta, maka ini dipetakan ke IndexOf(this , value ) > 0 |
Boolean EndsWith(String value ) |
this LIKE ' %value ' |
Jika value bukan konstanta, maka ini dipetakan ke Right(this , length(value )) = value . |
Boolean StartsWith(String value ) |
this LIKE 'value %' |
Jika value bukan konstanta, maka ini dipetakan ke IndexOf(this , value ) = 1. |
Panjang | Length(this ) |
|
Int32 IndexOf(String value ) |
IndexOf(this , value ) - 1 |
|
System.String Insert(Int32 startIndex , String value ) |
Concat(Concat(Substring(this , 1, startIndex ), value ), Substring(this , startIndex +1, Length(this ) - startIndex )) |
|
System.String Remove(Int32 startIndex ) |
Substring(this , 1, startIndex ) |
|
System.String Remove(Int32 startIndex , Int32 count ) |
Concat(Substring(this , 1, startIndex ) , Substring(this , startIndex + count +1, Length(this ) - (startIndex + count ))) |
Remove(startIndex , count ) hanya didukung jika count adalah bilangan bulat yang lebih besar dari atau sama dengan 0. |
System.String Replace(String oldValue , String newValue ) |
Ganti(this , oldValue , newValue ) |
|
System.String Substring(Int32 startIndex ) |
Substring(this , startIndex +1, Length(this ) - startIndex ) |
|
System.String Substring(Int32 startIndex , Int32 length ) |
Substring(this , startIndex +1, length ) |
|
System.String ToLower() | ToLower(this ) |
|
System.String ToUpper() | ToUpper(this ) |
|
System.String Trim() | Trim(this ) |
|
System.String TrimEnd(Char[] trimChars ) |
RTrim(this ) |
|
System.String TrimStart(Char[]trimChars ) |
LTrim(this ) |
|
Boolean Equals(String value ) |
= operator |
Pemetaan Metode System.DateTime (Statik)
Metode System.DateTime (statik) | Fungsi kanonis | Catatan |
---|---|---|
Boolean Equals(DateTime t1 , DateTime t2 ) |
= operator | |
System.DateTime.Now | CurrentDateTime() | |
System.DateTime.UtcNow | CurrentUtcDateTime() | |
Boolean op_Equality(DateTime d1 , DateTime d2 ) |
= operator | |
Boolean op_GreaterThan(DateTime t1 , DateTime t2 ) |
> operator | |
Boolean op_GreaterThanOrEqual(DateTime t1 , DateTime t2 ) |
>= operator | |
Boolean op_Inequality(DateTime t1 , DateTime t2 ) |
!= operator | |
Boolean op_LessThan(DateTime t1 , DateTime t2 ) |
< operator | |
Boolean op_LessThanOrEqual(DateTime t1 , DateTime t2 ) |
<= operator | |
Microsoft.VisualBasic.DateAndTime.DatePart( _ ByVal Interval As DateInterval, _ByVal DateValue As DateTime, _Optional ByVal FirstDayOfWeekValue As FirstDayOfWeek = VbSunday, _Optional ByVal FirstWeekOfYearValue As FirstWeekOfYear = VbFirstJan1 _) As Integer |
Lihat bagian Fungsi DatePart untuk informasi lebih lanjut. | |
Microsoft.VisualBasic.DateAndTime.Now | CurrentDateTime() | |
Microsoft.VisualBasic.DateAndTime.Year(DateTime TimeValue ) |
Year() | |
Microsoft.VisualBasic.DateAndTime.Month(DateTime TimeValue ) |
Month() | |
Microsoft.VisualBasic.DateAndTime.Day(DateTime TimeValue ) |
Day() | |
Microsoft.VisualBasic.DateAndTime.Hour(DateTime TimeValue ) |
Hour() | |
Microsoft.VisualBasic.DateAndTime.Minute(DateTime TimeValue ) |
Minute() | |
Microsoft.VisualBasic.DateAndTime.Second(DateTime TimeValue ) |
Second() |
Pemetaan Metode System.DateTime (Instans)
Metode System.DateTime (instans) | Fungsi kanonis |
---|---|
Boolean Equals(DateTime value ) |
= operator |
Hari | Day(this ) |
Jam | Hour(this ) |
Milidetik | Millisecond(this ) |
Menit | Minute(this ) |
Month | Month(this ) |
Detik | Second(this ) |
Tahun | Year(this ) |
Pemetaan Metode System.DateTimeOffset (Instans)
Pemetaan ditampilkan untuk metode get
pada properti yang terdaftar.
Metode System.DateTimeOffset (instans) | Fungsi kanonis | Catatan |
---|---|---|
Hari | Day(this ) |
Tidak didukung terhadap SQL Server 2005. |
Jam | Hour(this ) |
Tidak didukung terhadap SQL Server 2005. |
Milidetik | Millisecond(this ) |
Tidak didukung terhadap SQL Server 2005. |
Menit | Minute(this ) |
Tidak didukung terhadap SQL Server 2005. |
Month | Month(this ) |
Tidak didukung terhadap SQL Server 2005. |
Detik | Second(this ) |
Tidak didukung terhadap SQL Server 2005. |
Tahun | Year(this ) |
Tidak didukung terhadap SQL Server 2005. |
Catatan
Metode Equals mengembalikan true
jika objek DateTimeOffset yang dibandingkan adalah sama; jika tidak, akan mengembalikan false
. Metode CompareTo mengembalikan 0, 1, atau -1 bergantung pada apakah objek DateTimeOffset yang dibandingkan sama, lebih besar, atau lebih kecil dari.
Pemetaan Metode System.DateTimeOffset (Statik)
Pemetaan ditampilkan untuk metode get
pada properti yang terdaftar.
Metode System.DateTimeOffset (statik) | Fungsi kanonis | Catatan |
---|---|---|
System.DateTimeOffset.Now() | CurrentDateTimeOffset() | Tidak didukung terhadap SQL Server 2005. |
Pemetaan Metode System.TimeSpan (Instans)
Pemetaan ditampilkan untuk metode get
pada properti yang terdaftar.
Metode System.TimeSpan (instans) | Fungsi kanonis | Catatan |
---|---|---|
Jam | Hour(this ) |
Tidak didukung terhadap SQL Server 2005. |
Milidetik | Millisecond(this ) |
Tidak didukung terhadap SQL Server 2005. |
Menit | Minute(this ) |
Tidak didukung terhadap SQL Server 2005. |
Detik | Second(this ) |
Tidak didukung terhadap SQL Server 2005. |
Catatan
Metode Equals mengembalikan true
jika objek TimeSpan yang dibandingkan adalah sama; jika tidak, akan mengembalikan false
. Metode CompareTo mengembalikan 0, 1, atau -1 bergantung pada apakah objek TimeSpan yang dibandingkan sama, lebih besar, atau lebih kecil dari.
Fungsi DatePart
Fungsi DatePart
dipetakan ke salah satu dari beberapa fungsi kanonis yang berbeda, bergantung pada nilai Interval
. Tabel berikut menampilkan pemetaan fungsi kanonis untuk nilai Interval
yang didukung:
Nilai interval | Fungsi kanonis |
---|---|
DateInterval.Year | Year() |
DateInterval.Month | Month() |
DateInterval.Day | Day() |
DateInterval.Hour | Hour() |
DateInterval.Minute | Minute() |
DateInterval.Second | Second() |
Pemetaan Fungsi Matematika
Metode CLR | Fungsi kanonis |
---|---|
System.Decimal.Ceiling(d Desimal) |
Ceiling(d ) |
System.Decimal.Floor(d Desimal) |
Floor(d ) |
System.Decimal.Round(d Desimal) |
Round(d ) |
System.Math.Ceiling(d Desimal) |
Ceiling(d ) |
System.Math.Floor(d Desimal) |
Floor(d ) |
System.Math.Round(d Desimal) |
Round(d ) |
System.Math.Ceiling(a Ganda) |
Ceiling(a ) |
System.Math.Floor(a Ganda) |
Floor(a ) |
System.Math.Round(a Ganda) |
Round(a ) |
System.Math.Round(Nilai ganda, Digit Int16) | Round(value, digits) |
System.Math.Round(Nilai ganda, Digit Int32) | Round(value, digits) |
System.Math.Round(Nilai desimal, Digit Int16) | Round(value, digits) |
System.Math.Round(Nilai desimal, Digit Int32) | Round(value, digits) |
System.Math.Abs(Nilai Int16) | Abs(value) |
System.Math.Abs(Nilai Int32) | Abs(value) |
System.Math.Abs(Nilai Int64) | Abs(value) |
System.Math.Abs(Nilai byte) | Abs(value) |
System.Math.Abs(Nilai tunggal) | Abs(value) |
System.Math.Abs(Nilai ganda) | Abs(value) |
System.Math.Abs(Nilai desimal) | Abs(value) |
System.Math.Truncate(Nilai ganda, Digit Int16) | Truncate(nilai, digit) |
System.Math.Truncate(Nilai ganda, Digit Int32) | Truncate(nilai, digit) |
System.Math.Truncate(Nilai desimal, Digit Int16) | Truncate(nilai, digit) |
System.Math.Truncate(Nilai desimal, Digit Int32) | Truncate(nilai, digit) |
System.Math.Power (Nilai Int32, Eksponen Int64) | Power(nilai, eksponen) |
System.Math.Power (Nilai Int32, Eksponen ganda) | Power(nilai, eksponen) |
System.Math.Power (Nilai Int32, Eksponen Desimal) | Power(nilai, eksponen) |
System.Math.Power (Nilai Int64, Eksponen Int64) | Power(nilai, eksponen) |
System.Math.Power (Nilai Int64, Eksponen ganda) | Power(nilai, eksponen) |
System.Math.Power (Nilai Int64, Eksponen Desimal) | Power(nilai, eksponen) |
System.Math.Power (Nilai ganda, eksponen Int64) | Power(nilai, eksponen) |
System.Math.Power(Nilai ganda, Eksponen ganda) | Power(nilai, eksponen) |
System.Math.Power (Nilai ganda, Eksponen desimal) | Power(nilai, eksponen) |
System.Math.Power (Nilai desimal, Eksponen Int64) | Power(nilai, eksponen) |
System.Math.Power(Nilai desimal, Eksponen ganda) | Power(nilai, eksponen) |
System.Math.Power(Nilai Desimal, Eksponen Desimal) | Power(nilai, eksponen) |
Pemetaan Operator Bitwise
Operator bitwise | Fungsi kanonis untuk operand non-Boolean | Fungsi kanonis untuk operand Boolean |
---|---|---|
Bitwise AND operator | BitWiseAnd | op1 AND op2 |
Bitwise OR operator | BitWiseOr | op1 OR op2 |
Bitwise NOT operator | BitWiseNot | NOT(op) |
Bitwise XOR operator | BitWiseXor | ((op1 AND NOT(op2)) OR (NOT(op1) AND op2)) |
Pemetaan Lainnya
Metode | Fungsi kanonis |
---|---|
Guid.NewGuid() | NewGuid() |