Hi Mattew!

On Mon, Sep 15, 2008 at 5:55 PM, Matthew Snyder <[EMAIL PROTECTED]>
wrote:
>
> Looks great so far! I did notice on Oracle and MySQL a decent amount
> of queries now fail because, for example, the MS SQL Northwind.cs will
> create a backing field for an association on, say,
> nwind.Customer.Orders ([Association ... Storage = "_Orders" ...) and
> many other mapping files don't have this yet, leading to an exception
> when we try to set field to null.

mmm that's strange because nwind.Customer.Orders is an EntitySet property.
Look at the following piece of code:

> let field = type.GetField(associationAttribute != null ?
> associationAttribute.Storage : string.Empty, BindingFlags.NonPublic |
> BindingFlags.Instance)

Such piece of code is located in DataMapper.GetEntityRefAssociations(Type)
and it isn't used for EntitySet properties (like nwind.Customers.Orders) but
for EntityRef properties.

I mean, the Association.Storage info is only needed for EntityRef but not
for EntitySets properties.
Look at the oracle-nwind.Order.Employee property, the association attribute
contains the Storage field="_employee", so it should work fine even in
oracle.

nwind.Customer.Order association attribute doesn't contains the Storage
field, but it isn't needed by the DataMapper.GetEntitySetAssociations(Type)
at least for the moment.

Nonetheless the change looks fine.

Regards.

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"DbLinq" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/dblinq?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to