See the version list below for details.
Install-Package TestDataFramework.dll -Version 2.2.4
dotnet add package TestDataFramework.dll --version 2.2.4
<PackageReference Include="TestDataFramework.dll" Version="2.2.4" />
paket add TestDataFramework.dll --version 2.2.4
#r "nuget: TestDataFramework.dll, 2.2.4"
// Install TestDataFramework.dll as a Cake Addin #addin nuget:?package=TestDataFramework.dll&version=2.2.4 // Install TestDataFramework.dll as a Cake Tool #tool nuget:?package=TestDataFramework.dll&version=2.2.4
Unit test data population tool.
This package is not used by any NuGet packages.
This package is not used by any popular GitHub repositories.
* Bug fix. When calling deferred value generator, was including record references that were not populatable, and therefore null.
This was causing a null reference exception when the generator tried to access a method (GetType()) off the null record.
* Ability to ignore properties. Useful to avoid side effects of properties with logic in the setter.
New RecordObjects convenience property on the OperableList<T> result collection type. Instead of
user having to write the LINQ statement to select out the RecordObjects.
* All setters on a property are executed in turn.
* Support for enums
* Bug fix. A combination of explicit/deep property setting and collections in the target object were
causing a null ref exception.
* Fixed bug in deep explicit property setting, same issue as in 184.108.40.206. It's a relatively rare edge case.
Calling Make/BindAndMake on an operable list will call the persistence layer only once for entire list.
Was calling once per element. Will save database round trips when DB populator is used.
* Deep explicit setting of properties.
* Introduction of the ability to get a value immediately by calling Make() or BindAndMake().
This is without needing to call IPopulator.Bind() separately to get values on the whole set
of requested objects.
* Bug Fix. Setting explicit value off of an interface didn't identify the concrete object's
actual (derived) type. Under these conditions, properties weren't being explicitly set
on the object instance.
* Assembly version properties correction.
* Syncing C# and Sql Server DateTime values for the Sql Server populator.
Milliseconds were being truncated on Sql Server but not in C#.
* Extra guard when accessing types from assemblies to be scanned.
Was throwing a ReflectionTypeLoadException for a particular assembly/type.
* Bug fix: Guid / uniqueidentifier in Sql Server now supported.
* Foreign keys can be explicitly set. Framework will not enforce referential integrity for those
properties if so.
Allows you to set a foreign key to null if the matching primary key table isn't in the C# model.
Referential integrity errors on the database server can occur if you introduce them this way.
* Internal methods/members of public facing types are marked as internal (or internal protected)
to reduce user's intellisense noise.
* Skipping assemblies that are not found in the file system during scannig of referenced
assemblies for primary/foreign table class matches. An exception had been occuring for some
assemblies, possibly becasue they were not in the bin folder due to being in the GAC.
* Adding an AppSettings key to explicitly enable or disable log messages. The key is:
"TestDataFramework-EnableLogger". The value to enable logging is "true".
Documentation is up to date on GitHub.
* Guarantee methods work with primary keys properly.
* RecordReference.Set method fix.
* Guarantee... methods fix.