ADO.NET Entityes, CRUD, Attach/deattach obj
Jeg er igang med at lave en lille controller, som skal kunne håndtere en CRUD (Create, Retrieve, Update, Delete).Til dette formål vil jeg gerne bruge ADO.NET Entity framework, dels fordi jeg godt vil lære det at kende og dels fordi jeg synes det er smart at jeg ikke skal søgere for samtigehed.
Create:
DataContext.<Table>.InsertOnSubmit( Entity );
DataContext.SaveChange();
Retrieve:
var item = from o in DataContext.<Table> where o.guid = ?? select o;
return o;
Delete:
var item = from o in DataContext.<Table> where o.guid = ?? select o;
db.<Table>.DeleteOnSubmit(o);
Mit problem er så
Update:
Hvordan kan jeg gøre det ?
Jeg har fundet denne kode:
/// <summary>
/// Attach an EntityObject that was modified when detached
/// </summary>
/// <param name="obj"></param>
/// <param name="objectDetached">DetachedObject</param>
public static void AttachUpdated(this ObjectContext obj, EntityObject objectDetached)
{
if (objectDetached.EntityState == EntityState.Detached)
{
object original = null;
if (obj.TryGetObjectByKey(objectDetached.EntityKey, out original))
obj.ApplyPropertyChanges(objectDetached.EntityKey.EntitySetName, objectDetached);
else
throw new ObjectNotFoundException();
}
}
Denne kode skulle gerne gøre dette:
1) forsøger at loade obj fra databasen/storage.
2) overføre værdier fra mit deattach obj til det loadede obj.
3) klar til at gemme DataContext.db.SubmitChanges();
Jeg kan bare ikke komme ind til ObjectContext som overstående methode ligger sig ind i, Hvordan gør jeg ?
Hvordan kan jeg ellers håndtere Attach og deattach obj på ?
Jeg bruger mine Entityes hele vejen rundt i mit projekt.
Hvis nogle har nogle gode artikler er jeg også lutter øre ?
//dl