Migrationsanleitung von Version 2.x zu Version 3
Gelöschte Klassen
Beinhaltende Methoden siehe Kapitel Gelöschte Methoden und Changing Namespaces.
Namespace | Klassenname | Grund |
---|---|---|
Collections | ListExtensions | Falscher Namespace |
Expression | ExpressionExtensions | Falscher Namespace. Der Expression-Namespace wurde in Collections-Namespace überführt. |
Expression | PropertySelectorTools | Der Expression-Namespace wurde in Collections-Namespace überführt. Die Funktionalität wurde mit andern Methoden rund um Expressions zusammengelegt. |
Linq | FilterExtensions | Der Linq-Namespace wurde in Collections-Namespace überführt. |
Linq | PagingExtensions | Der Linq-Namespace wurde in Collections-Namespace überführt. |
Linq | WhereClauseExpressions | Der Linq-Namespace wurde in Collections-Namespace überführt. File-Class-Missmatch. |
Reflection | EmbeddedResourcesTools | Beinhaltende Methoden wurden Extension-Methoden |
Reflection | ObjectComparsionExtensions | Vergleichsmethoden verschoben in Namespace Comparison, Typo in Klassenname |
Reflection | ObjectHelper | Methoden drehten sich um Expressions, daher in Collections/ExpressionHelper aufgegangen. |
Root | DateExtensions | Falscher Namespace |
Root | EnumExtensions | Falscher Namespace |
Root | IntegerExtensions | Falscher Namespace |
Root | ObjectExtensions | Falscher Namespace |
Root | StreamExtensions | Falscher Namespace |
Root | StringExtensions | Falscher Namespace |
Gelöschte Methoden
Methode | Grund | Migration | Zusatzinfos |
---|---|---|---|
DateTime.Truncate(TimeSpan) | Hohe Risiko zu missbräuchlicher Verwendung. | DateTime.Truncate(DateTimePart) | |
DateExtensions.AsNullable(DateTime) | Nicht-Extensionmethode in Extension-Klasse. Zu spezifisch auf DateTime. | DateTime.AsNullable | Neue Methode für alle Structs |
EmbeddedResourcesTools.GetEmbeddedTextFile() | Methode wurde Extensionmethode, hatte zudem diverse Probleme, Name unglücklich gewählt | Assembly.LoadEmbeddedResource | |
EnumExtensions.GetEnumValues |
Klasse wurde aufgelöst, Multiple "Enum" in Name | EnumHelper |
|
instance.AsArray() | Klasse wurde aufgelöst. | instance.AsArray(true) | |
instance.AsArrayOf() | Klasse wurde aufgelöst. | instance.AsArray(true) | |
instance.CheckIsNotNull() | Klasse wurde aufgelöst. | Verify.That(context, "context").IsNotNull | |
instance.NullSafeEquals() | Klasse wurde aufgelöst. | Verify.That(context, "context").IsEqualTo | |
IEnmerable |
Name irreführend, Klasse wurde aufgelöst | IEnumerable |
|
IEnmerable |
Name irreführend, Klasse wurde aufgelöst | IEnumerable |
|
IQueryable |
Klasse wurde aufgelöst. Name zu sperrig. Zu spezifisch auf IQueryable |
IQueryable |
Neue Methode verarbeitet IEnumerable |
IQueryable |
Klasse wurde aufgelöst. Name zu sperrig. Zu spezifisch auf IQueryable |
IQueryable |
Neue Methode verarbeitet IEnumerable |
IQueryable |
Methode war absolut nicht tragbar für ein zentrales Paket. | - | |
ObjectHelper.PropertyName |
Klasse wurde aufgelöst, Name schlecht gewählt | ExpressionHelper.ExtractMemberName |
Neues class-Constrain für TInstance |
PropertySelectiorTools.SelectPropertyByPath | Klasse wurde aufgelöst. | ExpressionHelper.SelectPropertyByPath | |
PropertySelectiorTools.SelectPropertyByPathX | Klasse wurde aufgelöst. | ExpressionHelper.SelectPropertyByPathX | Unbenutzter Typparameter TOut entfernt. |
string.AsCleanDisplayText | Klasse wurde aufgelöst. | string.CleanJson | |
string.NoReturnOrLineFeeds | Methode führte in vielen UseCases zu Problemen | string.StripLineFeeds | |
StringExtensions.EmptyAsNull | Nicht-Extensionmethod in Extensionklasse | string.EmptyAsNull | |
WhereClauseExpressions.Like | Klasse wurde aufgelöst. Nicht-Extensionmethode in Extension-Klasse. | ExpressionHelper.CreateLikeExpression | null als Value ist zulässig, neue Exception bei Wildcard irgendwo in der Mitte |
Changing Namespaces
Methode | Alter Namespace | Neuer Namespace | Zusatzinfos |
---|---|---|---|
DateTime.BeginOfDay | Root | Time/Extensions | |
DateTime.EndOfDay | Root | Time/Extensions | |
DateTime.FirstDayOfMonth | Root | Time/Extensions | |
DateTime.FirstDayOfNextMonth | Root | Time/Extensions | |
DateTime.LastDayOfMonth | Root | Time/Extensions | |
DateTime.SetDay | Root | Time/Extensions | |
Expression.ChangeInputType | Expressions | Collection/Extensions | |
IEnumerable.WhereNotNull | Linq | Collection/Extensions | |
IgnoreInPropertyComparisonAttribute | Reflection | Comparison/Model | Typo in Attributname gefixt. |
instance.IsEqualOnPropertyLevel | Reflection | Comparison/Extensions | Neues class-Constraint für die Instanzen |
instance.MergeWith | Reflection | Reflection/Extensions | Neues class-Constraint für die Instanzen |
int.AsNullable | Root | Numeric/Extensions | Neue Methode verarbeitet alle Structs |
IOrderedEnumerable |
Linq | Collection/Extensions | |
IOrderedQueryable |
Linq | Collection/Extensions | |
IQueryable |
Linq | Collection/Extensions | Neue Methode verarbeite IEnumerable |
List |
Collections | Collections/Extensions | Die neue Methode verarbeite ICollection |
MemberComparisonResult | Reflection | Comparison/Model | Setter entfernt, Objekt immutable |
PagedResult | Linq | Collections/Model | Setter entfernt, public Konstruktor hinzugefügt. |
Stream.ReadAllBytes | Root | IO/Extensions | Besseres Handling und diverse Bugfixes in der Methode |
string.Truncate | Root | Text/Extensions |
Fix Typos
Namespace | Typ | Alter Name | Neuer Name |
---|---|---|---|
Comparison.Model | Klasse | IgnoreInPropertyComparsionAttribute | IgnoreInPropertyComparisonAttribute |
Numeric.Extensions | Klasse | Formating | Formatting |
Reflection.Validation | Member | ValidationResults.Informations | ValidationResults.Information |
Weiteres
- Verify.That(...).IsNotNullOrEmpty wirft im NULL-Fall nun eine ArgumentNullException statt eine ArgumentException.
- ExpressionHelper.SelectPropertyByName(X) hat nun ein class-Constraint
- Dictionary.AddIfMissing funktioniert nun auch für IDictionary