Hi,
First congrats with the release of 2.5! Everything seems to still work great, hopefully I get some time to learn the new features.
I have however encountered my first bug. This worked in version 2.0 but not in 2.5:
I have a supertype Identification with a subtype LicensePlate.
When I call the following code on the subtype, everything goes well:
[Test(Description = "TEST with subtype")]
public void TEST()
{
LicensePlateCollection licensePlateCollection = new LicensePlateCollection();
licensePlateCollection.GetMulti(null);
List<int> matches = licensePlateCollection.FindMatches(LicensePlateFields.LicensePlate == "AB-01-CD");
Assert.AreEqual(1, matches.Count);
}
However when I do the same call on the supertype:
[Test(Description = "TEST with supertype")]
public void TEST2()
{
IdentificationCollection identificationCollection = new IdentificationCollection();
identificationCollection.GetMulti(null);
List<int> matches = identificationCollection.FindMatches(LicensePlateFields.LicensePlate == "AB-01-CD");
Assert.AreEqual(1, matches.Count);
}
I get the following exception:
SD.LLBLGen.Pro.ORMSupportClasses.ORMInterpretationException: Field value and value to compare with aren't of the same type. Field value is of type 'System.Int32', value to compare with is of type 'System.String'
at SD.LLBLGen.Pro.ORMSupportClasses.FieldCompareValuePredicate.InterpretPredicate(IEntityCore entity)
at SD.LLBLGen.Pro.ORMSupportClasses.Predicate.SD.LLBLGen.Pro.ORMSupportClasses.IPredicateInterpret.Interpret(IEntityCore entity)
at SD.LLBLGen.Pro.ORMSupportClasses.CollectionCore`1.FindMatches(IPredicate filter)
at TestFixture.TEST2()
LicensePlate is a field of type varchar(30) and is defined only in the subtype. As I stated before, this worked in version 2.0.
Regards,
Patrick