Я использую ADO.NET EF 4.0.Сначала я получаю объект из БД и отсоединяю этот объект, отправленный веб-службой на стороне клиента.
веб-служба:
private static Project GetObjects(int id)
{
var connSetting = ConfigurationManager.ConnectionStrings["ProjectEntities"];
var conn = new EntityConnection(connSetting.ConnectionString);
conn.Open();
using(var contex= new ProjectEntities(conn))
{
var project = (from p in contex.Projects
where p.ProjectId == id
select p).FirstOrDefault();
contex.Detach(project);
return project;
}
}
на стороне клиента, является ли этот объект отредактированным и отправленным обратно в сетьслужба, на стороне веб-службы мне нужно обновить с этим объектом БД.
Теперь я использую это:
private static void UpdateObject(Project obj)
{
var connSetting = ConfigurationManager.ConnectionStrings["ProjectEntities"];
var conn = new EntityConnection(connSetting.ConnectionString);
conn.Open();
using (var contex = new ProjectEntities(conn))
{
var entity = (Project)contex.GetObjectByKey(obj.EntityKey);
contex.ApplyCurrentValues(entity.EntityKey.EntitySetName, obj);
contex.SaveChanges();
}
}
Этот метод для обновления в порядке?Потому что сначала я должен получить объект из объекта contextx, а затем я могу обновить.
Что вы предлагаете.Спасибо за вашу помощь и советы