Size: a a a

2019 May 20

W

WolfRam in CODE BLOG / C#
400 строк наверное всетаки немного.

я знаю два способа редактировать записи используя EF
1. Общий контекст при инициализации экземпляра формы, я так понимаю для прямого редактирования полей DGV с последующим вызовом отдельного события db.SaveChanges()
2. Using - где между двумя фигурными скобками надо сделать изменения и зафиксировать их - db.SaveChanges().
Два DGV на вкладках "Сокращения" и "Авторассылка" используют первый способ сохранения.
DGV на вкладке "Редактор" вызвает отдельное окно в котором новый контекст вносит изменения. Для этого DGV нужен новый контекст, который можно тут же убить.
источник

W

WolfRam in CODE BLOG / C#
возникает вопрос, из разряда ламерских - насколько криминально юзать общий контекст и можно ли его "Refresh"-нуть (технически и/или по совести)
источник

ch

central hardware in CODE BLOG / C#
смысл скрывать код, все равно пока на него не получишь авторские права считай он и не твой
источник

ch

central hardware in CODE BLOG / C#
а вот сливать ссылки в общий чат ну такая себе затея
источник

W

WolfRam in CODE BLOG / C#
central hardware
а вот сливать ссылки в общий чат ну такая себе затея
окей
источник

MM

Mikhail M. in CODE BLOG / C#
central hardware
смысл скрывать код, все равно пока на него не получишь авторские права считай он и не твой
Какие ссылки?
источник

MM

Mikhail M. in CODE BLOG / C#
WolfRam
400 строк наверное всетаки немного.

я знаю два способа редактировать записи используя EF
1. Общий контекст при инициализации экземпляра формы, я так понимаю для прямого редактирования полей DGV с последующим вызовом отдельного события db.SaveChanges()
2. Using - где между двумя фигурными скобками надо сделать изменения и зафиксировать их - db.SaveChanges().
Два DGV на вкладках "Сокращения" и "Авторассылка" используют первый способ сохранения.
DGV на вкладке "Редактор" вызвает отдельное окно в котором новый контекст вносит изменения. Для этого DGV нужен новый контекст, который можно тут же убить.
источник

MM

Mikhail M. in CODE BLOG / C#
Для тебя это будет библия 😅
источник

MM

Mikhail M. in CODE BLOG / C#
Просто делай, как там и получишь желаемый результат 👍
источник

W

WolfRam in CODE BLOG / C#
Да, я многое откуда почерпнул, но как водится некоторые вещи либо за рамками курса из разряда тонкостей либо не задержались в голове, на них основная масса вопросов и возникнет. Что чаще - дырявая голова или ЗаРамкамиКурса - вопрос вечный)) но все равно спасибо, натолкнули на мысли и решение я нашёл
источник

W

WolfRam in CODE BLOG / C#
Подведу итог:
using (TransportEntities t1 = new TransportEntities())
{
 t1.MsgTemplates.Load();
 msgTemplatesDGV.DataSource = t1.MsgTemplates.Local.ToBindingList();
 using (TransportEntities t2 = new TransportEntities())
 {
   t2.MsgTemplates.Load();
   MsgTemplates mt = new MsgTemplates() { Template = "templ2", EntityID = 2 };
   t2.MsgTemplates.Add(mt);
   t2.SaveChanges();
 }
 msgTemplatesDGV.Refresh();
 msgTemplatesDGV.Update();
}

в итоге DGV не отобразит запись "templ2" что собственно у меня и получилось
источник

VS

Vadim Shvanov in CODE BLOG / C#
Сортировка слиянием - merge sort - алгоритм сортировки, который работает по принципу разделяй и властвуй. Стабильно работает за линейно-логарифмическое время и при этом достаточно простой для реализации алгоритм с помощью рекурсии.

Начало трансляции сегодня (20.05.2019) в 20-00 по МСК на моем YouTube-кнале. Обязательно подключайтесь!

https://www.youtube.com/watch?v=T-SkvhcAXO4
источник

MM

Mikhail M. in CODE BLOG / C#
WolfRam
Подведу итог:
using (TransportEntities t1 = new TransportEntities())
{
 t1.MsgTemplates.Load();
 msgTemplatesDGV.DataSource = t1.MsgTemplates.Local.ToBindingList();
 using (TransportEntities t2 = new TransportEntities())
 {
   t2.MsgTemplates.Load();
   MsgTemplates mt = new MsgTemplates() { Template = "templ2", EntityID = 2 };
   t2.MsgTemplates.Add(mt);
   t2.SaveChanges();
 }
 msgTemplatesDGV.Refresh();
 msgTemplatesDGV.Update();
}

в итоге DGV не отобразит запись "templ2" что собственно у меня и получилось
using в using е, ого!
источник

MM

Mikhail M. in CODE BLOG / C#
Зачем? Ведь контекст может быть сразу на несколько DbSet'ов
источник

MM

Mikhail M. in CODE BLOG / C#
Но ладно, будем следовать 1 закону программиста - работает? НЕ ТРОГАЙ! 😅
источник

W

WolfRam in CODE BLOG / C#
Да, загружаю один DGV на 1500 строк, не знаю как называется технология когда при прокрутке подгружаются следующие порции, здесь я не знаю как прикрутить Using, только общий контекст. Если с помощью Using загрузить первую порцию то контекст закрывается и при прокрутке вываливается ексепшен, типа контекста не существует
источник

W

WolfRam in CODE BLOG / C#
ну вот приходится колхозить такой замес. наверное надо както на эвент посадить этот узинг типа при достижении границы порции - вызывается эвент и подгружает еще порцию
источник

VS

Valentin Shpakov in CODE BLOG / C#
Ребята можете подсказать какой-то проект на C#,  где понадобиться ASP. NET MVC 5, Entity Framework, может ещё что небудь, а то практической части не хватает. Буду очень благодарен)
источник

M

Mikhail in CODE BLOG / C#
Первое, что приходит в голову - аналог системы Dodo pizza, точнее её части
источник

VS

Valentin Shpakov in CODE BLOG / C#
Капец, там схема😄, интересно возьму на заметку, буду не против, если будут ещё идеи)
источник