CLR-methode voor canonieke functietoewijzing
Entity Framework biedt een set canonieke functies die functionaliteit implementeren die gebruikelijk is in veel databasesystemen, zoals tekenreeksmanipulatie en wiskundige functies. Hierdoor kunnen ontwikkelaars zich richten op een breed scala aan databasesystemen. Bij het aanroepen van een querytechnologie, zoals LINQ naar Entiteiten, worden deze canonieke functies vertaald naar de juiste bijbehorende winkelfunctie voor de provider die wordt gebruikt. Hierdoor kunnen functie-aanroepen worden uitgedrukt in een algemene vorm in verschillende gegevensbronnen, waardoor een consistente query-ervaring wordt geboden in verschillende gegevensbronnen. De operatoren BITWISE AND, OR, NOT en XOR worden ook toegewezen aan canonieke functies wanneer de operand een numeriek type is. Voor Booleaanse operanden berekenen de operatoren bitwise AND, OR, NOT en XOR de logische EN-, OR-, NOT- en XOR-bewerkingen van hun operanden. Zie Canonical Functions voor meer informatie.
Voor LINQ-scenario's moeten query's voor het Entity Framework bepaalde CLR-methoden toewijzen aan methoden op de onderliggende gegevensbron via canonieke functies. Elke methode die een LINQ aanroept naar entiteitenquery die niet expliciet is toegewezen aan een canonieke functie, leidt ertoe dat er een runtime-uitzondering NotSupportedException wordt gegenereerd.
System.String-methodetoewijzing (statisch)
System.String-methode (statisch) | Canonieke functie |
---|---|
System.String Concat(String str0 , String str1 ) |
Concat(str0 , str1 ) |
System.String Concat(Tekenreeks, Tekenreeksstr0 str1 , Tekenreeksstr2 ) |
Concat(Concat(str0 , str1 ), str2 ) |
System.String Concat(Tekenreeks, Tekenreeksstr0 str1 , Tekenreeksstr2 , Tekenreeks str03 ) |
Concat(Concat(Concat(str0 , str1 ), str2 ) str3 |
Booleaanse waarde is gelijk aan(tekenreeks a , tekenreeks b ) |
= operator |
Booleaanse isnullOrEmpty(tekenreeks value ) |
(IsNull(value )) OR Length(value ) = 0 |
Booleaanse op_Equality(tekenreeks a , tekenreeks b ) |
= operator |
Booleaanse op_Inequality(tekenreeks a , tekenreeks 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(Tekenreeks str , Int32 Length ) |
Left(str , Length ) |
Microsoft.VisualBasic.Strings.Mid(Tekenreeks str , Int32 Start , Int32 Length ) |
Subtekenreeks(str , Start , Length ) |
Microsoft.VisualBasic.Strings.Right(Tekenreeks str , Int32 Length ) |
Right(str , Length ) |
Microsoft.VisualBasic.Strings.UCase(String Value ) |
ToUpper(Value ) |
Microsoft.VisualBasic.Strings.LCase(Tekenreekswaarde) | ToLower(Value ) |
System.String Method (Instance)-toewijzing
System.String-methode (exemplaar) | Canonieke functie | Opmerkingen |
---|---|---|
Booleaanse contains(tekenreeks value ) |
this LIKE %%value |
Als value dit geen constante is, wordt dit toegewezen aan IndexOf(this , value ) > 0 |
Booleaanse endsWith(tekenreeks value ) |
this LIKE ' %value ' |
Als value dit geen constante is, wordt deze toegewezen aan Right(, length(value this )) = value . |
Booleaanse startsWith(tekenreeks value ) |
this LIKE 'value %' |
Als value dit geen constante is, wordt dit toegewezen aan IndexOf(this , value ) = 1. |
Lengte | 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 ) |
Subtekenreeks(this , 1, startIndex ) |
|
System.String Remove(Int32 startIndex , Int32 count ) |
Concat(Subtekenreeks(this , 1, startIndex ), Subtekenreeks(this , + startIndex count +1, Length(this ) - (startIndex + count )) ) |
Remove(startIndex , count ) wordt alleen ondersteund als count een geheel getal groter dan of gelijk aan 0 is. |
System.String Replace(String oldValue , String newValue ) |
Replace(this , oldValue , newValue ) |
|
System.String-subtekenreeks(Int32 startIndex ) |
Subtekenreeks(this , startIndex +1, Length(this ) - startIndex ) |
|
System.String-subtekenreeks(Int32 startIndex , Int32 length ) |
Subtekenreeks(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 ) |
|
Booleaanse waarde is gelijk aan(tekenreeks value ) |
= operator |
System.DateTime-methode (statische) toewijzing
System.DateTime-methode (statisch) | Canonieke functie | Opmerkingen |
---|---|---|
Booleaanse waarde is gelijk aan(DateTime t1 , DateTime t2 ) |
= operator | |
System.DateTime.Now | CurrentDateTime() | |
System.DateTime.UtcNow | CurrentUtcDateTime() | |
Booleaanse op_Equality(DateTime d1 , DateTime d2 ) |
= operator | |
Booleaanse op_GreaterThan(DateTime t1 , DateTime t2 ) |
> bediener | |
Booleaanse op_GreaterThanOrEqual(DateTime t1 , DateTime t2 ) |
>= operator | |
Booleaanse op_Inequality(DateTime t1 , DateTime t2 ) |
!= operator | |
Booleaanse op_LessThan(Datum/tijd t1 , Datum/tijd t2 ) |
< bediener | |
Booleaanse op_LessThanOrEqual(Datum/tijd t1 , Datum/tijd 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 _) Als geheel getal |
Zie de sectie DatePart Function voor meer informatie. | |
Microsoft.VisualBasic.DateAndTime.Now | CurrentDateTime() | |
Microsoft.VisualBasic.DateAndTime.Year(DateTime TimeValue ) |
Year() | |
Microsoft.VisualBasic.DateAndTime.Month(Datum/tijd 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() |
System.DateTime-methode (instantie)-toewijzing
System.DateTime-methode (exemplaar) | Canonieke functie |
---|---|
Booleaanse waarde is gelijk aan(Datum/tijd value ) |
= operator |
Dag | Day(this ) |
Uur | Hour(this ) |
Milliseconde | Milliseconden(this ) |
Minuut | Minute(this ) |
Month | Month(this ) |
Seconde | Second(this ) |
Year | Year(this ) |
System.DateTimeOffset-methode (instantie)-toewijzing
De toewijzing die wordt weergegeven voor de get
methoden in de vermelde eigenschappen.
System.DateTimeOffset-methode (exemplaar) | Canonieke functie | Opmerkingen |
---|---|---|
Dag | Day(this ) |
Niet ondersteund voor SQL Server 2005. |
Uur | Hour(this ) |
Niet ondersteund voor SQL Server 2005. |
Milliseconde | Milliseconden(this ) |
Niet ondersteund voor SQL Server 2005. |
Minuut | Minute(this ) |
Niet ondersteund voor SQL Server 2005. |
Month | Month(this ) |
Niet ondersteund voor SQL Server 2005. |
Seconde | Second(this ) |
Niet ondersteund voor SQL Server 2005. |
Year | Year(this ) |
Niet ondersteund voor SQL Server 2005. |
Notitie
De Equals methode retourneert true
als de vergeleken DateTimeOffset objecten gelijk zijn; false
anders. De CompareTo methode retourneert 0, 1 of -1, afhankelijk van of het vergeleken DateTimeOffset object gelijk is aan, groter dan of kleiner is dan respectievelijk.
System.DateTimeOffset-methode (statische) toewijzing
De toewijzing die wordt weergegeven voor de get
methoden in de vermelde eigenschappen.
Methode System.DateTimeOffset (statisch) | Canonieke functie | Opmerkingen |
---|---|---|
System.DateTimeOffset.Now() | CurrentDateTimeOffset() | Niet ondersteund voor SQL Server 2005. |
System.TimeSpan-methode (instantie)-toewijzing
De toewijzing die wordt weergegeven voor de get
methoden in de vermelde eigenschappen.
System.TimeSpan-methode (exemplaar) | Canonieke functie | Opmerkingen |
---|---|---|
Tijden | Hour(this ) |
Niet ondersteund voor SQL Server 2005. |
Milliseconden | Milliseconden(this ) |
Niet ondersteund voor SQL Server 2005. |
Minuten | Minute(this ) |
Niet ondersteund voor SQL Server 2005. |
Seconden | Second(this ) |
Niet ondersteund voor SQL Server 2005. |
Notitie
De Equals methode retourneert true
als de vergeleken TimeSpan objecten gelijk zijn; false
anders. De CompareTo methode retourneert 0, 1 of -1, afhankelijk van of het vergeleken TimeSpan object gelijk is aan, groter dan of kleiner is dan respectievelijk.
DatePart, functie
De DatePart
functie is toegewezen aan een van de verschillende canonieke functies, afhankelijk van de waarde van Interval
. In de volgende tabel ziet u de canonieke functietoewijzing voor de ondersteunde waarden van Interval
:
Intervalwaarde | Canonieke functie |
---|---|
DateInterval.Year | Year() |
DateInterval.Month | Month() |
DateInterval.Day | Day() |
DateInterval.Hour | Hour() |
DateInterval.Minute | Minute() |
DateInterval.Second | Second() |
Wiskundige functietoewijzing
CLR-methode | Canonieke functie |
---|---|
System.Decimal.Ceiling(Decimaal d ) |
Plafond(d ) |
System.Decimal.Floor(Decimaal d ) |
Floor(d ) |
System.Decimal.Round(Decimaal d ) |
Round(d ) |
System.Math.Ceiling(Decimaal d ) |
Plafond(d ) |
System.Math.Floor(decimaal d ) |
Floor(d ) |
System.Math.Round(Decimaal d ) |
Round(d ) |
System.Math.Ceiling(Double a ) |
Plafond(a ) |
System.Math.Floor(Double a ) |
Floor(a ) |
System.Math.Round(Double a ) |
Round(a ) |
System.Math.Round(Dubbele waarde, Int16-cijfers) | Afronden(waarde, cijfers) |
System.Math.Round(Dubbele waarde, Int32 cijfers) | Afronden(waarde, cijfers) |
System.Math.Round(Decimale waarde, Int16-cijfers) | Afronden(waarde, cijfers) |
System.Math.Round(Decimale waarde, Int32, cijfers) | Afronden(waarde, cijfers) |
System.Math.Abs(Int16-waarde) | Abs(waarde) |
System.Math.Abs(Int32-waarde) | Abs(waarde) |
System.Math.Abs(Int64-waarde) | Abs(waarde) |
System.Math.Abs(Bytewaarde) | Abs(waarde) |
System.Math.Abs(Enkele waarde) | Abs(waarde) |
System.Math.Abs(dubbele waarde) | Abs(waarde) |
System.Math.Abs(decimale waarde) | Abs(waarde) |
System.Math.Truncate(Dubbele waarde, Int16-cijfers) | Afkappen(waarde, cijfers) |
System.Math.Truncate(Dubbele waarde, Int32 cijfers) | Afkappen(waarde, cijfers) |
System.Math.Truncate(decimale waarde, int16 cijfers) | Afkappen(waarde, cijfers) |
System.Math.Truncate(decimale waarde, int32 cijfers) | Afkappen(waarde, cijfers) |
System.Math.Power(Int32-waarde, Int64 exponent) | Power(waarde, exponent) |
System.Math.Power(Int32-waarde, dubbele exponent) | Power(waarde, exponent) |
System.Math.Power(Int32-waarde, decimaal exponent) | Power(waarde, exponent) |
System.Math.Power(Int64-waarde, Int64 exponent) | Power(waarde, exponent) |
System.Math.Power(Int64-waarde, dubbele exponent) | Power(waarde, exponent) |
System.Math.Power(Int64-waarde, decimaal exponent) | Power(waarde, exponent) |
System.Math.Power(Dubbele waarde, Int64 exponent) | Power(waarde, exponent) |
System.Math.Power(Dubbele waarde, Dubbele exponent) | Power(waarde, exponent) |
System.Math.Power(Dubbele waarde, Decimaal exponent) | Power(waarde, exponent) |
System.Math.Power(Decimale waarde, Exponent Int64) | Power(waarde, exponent) |
System.Math.Power(Decimale waarde, Dubbele exponent) | Power(waarde, exponent) |
System.Math.Power(Decimale waarde, Decimaal exponent) | Power(waarde, exponent) |
Bitsgewijze operatortoewijzing
Bitsgewijze operator | Canonieke functie voor niet-Booleaanse operanden | Canonieke functie voor Booleaanse operanden |
---|---|---|
Bitsgewijze AND-operator | BitWiseAnd | op1 AND op2 |
Bitsgewijze OR-operator | BitWiseOr | op1 OF op2 |
Bitwise NOT-operator | BitWiseNot | NOT(op) |
Bitwise XOR-operator | BitWiseXor | ((op1 EN NIET(op2)) OF (NIET(op1) EN op2)) |
Andere toewijzingen
Wijze | Canonieke functie |
---|---|
Guid.NewGuid() | NewGuid() |