Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / EF Insert/Update/Delete / 4 сообщений из 4, страница 1 из 1
14.09.2010, 11:21
    #36845033
Алексей К
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
EF Insert/Update/Delete
Как в EF не используя ObjectStateManager послать команду сохранения, чтобы не заниматься подобным извратом?

Извращение
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
    public static class ObjectSetHelper
    {
        public static T Insert<T>(this ObjectSet<T> objectSet, T value)
            where T : class
        {
            objectSet.AddObject(value);
            try
            {
                objectSet.Context.SaveChanges();
            }
            finally
            {
                objectSet.Detach(value);
            }
            return value;
        }

        public static T Update<T>(this ObjectSet<T> objectSet, T value)
            where T : class
        {
            objectSet.Attach(value);
            objectSet.Context.ObjectStateManager.ChangeObjectState(value, System.Data.EntityState.Modified);
            try
            {
                objectSet.Context.SaveChanges();
            }
            finally
            {
                objectSet.Detach(value);
            }
            return value;
        }

        public static void Delete<T>(this ObjectSet<T> objectSet, T value)
            where T : class
        {
            objectSet.Attach(value);
            objectSet.Context.ObjectStateManager.ChangeObjectState(value, System.Data.EntityState.Deleted);
            try
            {
                objectSet.Context.SaveChanges();
            }
            catch
            {
                objectSet.Detach(value);
                throw;
            }
        }
    }
...
Рейтинг: 0 / 0
14.09.2010, 11:29
    #36845052
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
EF Insert/Update/Delete
Хороший топик.

Вставлю пять копеек по удалению: Deleting without fetching
...
Рейтинг: 0 / 0
14.09.2010, 11:31
    #36845063
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
EF Insert/Update/Delete
...
Рейтинг: 0 / 0
15.09.2010, 05:54
    #36846745
Алексей К
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
EF Insert/Update/Delete
МСУХороший топик."Хороший топик - мёртвый топик" (с) мой :-)

Нету решения. Можно конечно порыться внутрях EF и его провайдера под MSSQL, но чё-то лень. :-)

Возможно проще свой генератор крудов подмутить...
...
Рейтинг: 0 / 0
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / EF Insert/Update/Delete / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]