You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This list will include all the features adjusted in the Cosmos.Standard 0.2.0 release plan #2 .
Add Unit Tests.
A major task of this refactoring is to add unit tests to Cosmos.Standard. Through this work, we can reduce a large number of potential problems.
During this process, we will adjust a large number of method signatures and add some functional options to make it easier to use. Of course, a large number of unreasonable interface designs will also be removed, and you can see the removed features in #60 .
Improve the performance of IsAttributeDefined/GetAttribute(s).
In the past, when we judged whether Attribute exists, we judged it by obtaining its instance (system default). We refer to the code of NCC AspectCore to improve the performance of this process.
Similarly, when we call GetAttribute, when we get the first matching Attribute, we instantiate it and return it directly, and subsequent attributes will not be checked continuously, thereby improving performance.
Note that we have removed all extension method entries for GetAttribute(s).
Add TypeVisit Tool.
We merged all operations on PropertyInfo and FieldInfo from TypeReflections and SystemPropertyExtensions, CosmosExpressionExtensions into TypeVisit and TypeVisitExtensions.
In this process, we refactored all methods and made trade-offs, including:
- [x] Remove all `GetPropertyValue`/`GetPropertyValueQuickly` extension methods
- [x] Remove all `SetPropertyValue`/`SetPropertyValueQuickly` extension methods
- [x] Remove `TypeAccessExtensions`, `TypeAccessCache`
- [x] Removed dependency on `Alexinea.FastMember`
- [x] Others
We will continue to improve.
Add TypeInherit Tool.
We have sorted out the methods related to type inheritance, removed and corrected many BUGs. Removed redundant or infrequently used extension methods. The methods of similar functions have been aggregated, so that users can use these extension methods more conveniently.
In this process, we added a lot of unit tests and formed the following methods:
This discussion was converted from issue #61 on December 09, 2020 07:16.
Heading
Bold
Italic
Quote
Code
Link
Numbered list
Unordered list
Task list
Attach files
Mention
Reference
Menu
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
This list will include all the features adjusted in the Cosmos.Standard 0.2.0 release plan #2 .
Add Unit Tests.
A major task of this refactoring is to add unit tests to Cosmos.Standard. Through this work, we can reduce a large number of potential problems.
During this process, we will adjust a large number of method signatures and add some functional options to make it easier to use. Of course, a large number of unreasonable interface designs will also be removed, and you can see the removed features in #60 .
Improve the performance of
IsAttributeDefined
/GetAttribute(s)
.In the past, when we judged whether Attribute exists, we judged it by obtaining its instance (system default). We refer to the code of NCC AspectCore to improve the performance of this process.
Similarly, when we call
GetAttribute
, when we get the first matching Attribute, we instantiate it and return it directly, and subsequent attributes will not be checked continuously, thereby improving performance.Note that we have removed all extension method entries for
GetAttribute(s)
.Add
TypeVisit
Tool.We merged all operations on PropertyInfo and FieldInfo from TypeReflections and
SystemPropertyExtensions
,CosmosExpressionExtensions
intoTypeVisit
andTypeVisitExtensions
.In this process, we refactored all methods and made trade-offs, including:
We will continue to improve.
Add
TypeInherit
Tool.We have sorted out the methods related to type inheritance, removed and corrected many BUGs. Removed redundant or infrequently used extension methods. The methods of similar functions have been aggregated, so that users can use these extension methods more conveniently.
In this process, we added a lot of unit tests and formed the following methods:
We will continue to improve.
Beta Was this translation helpful? Give feedback.
All reactions