Hello,

 

I am currently using EF 6.x with Firebird 2.5.x and it works very well.

 

During a dataload from an external datasource I load a number of records
from my database and compare them with the external source. Sometimes I have
to correct/complete my data. In the case this update fails on the database i
detach the current entity that the following updates can continue.

 

This works fine unless I have modified a navigation property of the current
entity.

 

List<RESSOURCEN>  = this.RESSOURCEN.Where(a => a.RESSOURCEN_STATUS ==
"Aktiv").Include(b => b.ARBEITSZEITEN).ToList();

// I loop through the List<RESSOURCEN>

// I modify one of the navigation properties ARBEITSZEITEN

// The update fails

this._efContext.Entry(res).State = EntityState.Detached;

// Now the entity RESSOURCEN res is detached and all navigation properties
are set to null. I understand the reason for that, following this page:
http://stackoverflow.com/questions/10342445/why-does-setting-entitystate-to-
detached-empty-a-property-of-type-listt#10343174 

 

// I tried to detach the navigation property before the entity itself, but
this fails: Change of items in the enumeration I am currently looping
through.        

Foreach(ARBEITSZEITEN azneu in res.ARBEITSZEITEN)

{

this._efContext.Entry(azneu) State = EntityState.Detached;

}

 

// I added now the modified navigation properties to my own list, which I
use then the detach.

modifiedAZ.Add(az);

// In the case of a error during update on the database

Foreach(ARBEITSZEITEN azneu in modifiedAZ)

{

this._efContext.Entry(azneu) State = EntityState.Detached;

}

modifiedAZ.Clear();

 

 

How would you handle such a situation?

 

Thanks

 

Niko

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Firebird-net-provider mailing list
Firebird-net-provider@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/firebird-net-provider

Reply via email to