Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > Базы данных (ADO.NET, LinqToSql, ORM Entity Framework, NHibernate)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.09.2015, 02:31   #1
dima1257
Пользователь
 
Аватар для dima1257
 
Регистрация: 16.11.2012
Сообщений: 66
По умолчанию Entity framework 4 c#. Загрузка/извлечение из dataGridView

Добрый день.
Автоматически сгенерировал модель БД из VS2010.
Делаю запрос.
Код:
var res = from c in context.USERS where c.STATUS == 1 orderby c.ID SELECT new {c.ID, c.NAME};
dgv.DataSource = res;
Данные в dataGridView загружены, но
1) не работает сортировка по заголовку столбца.
2) Как их корректно извлечь? То есть если извлекли 1 запись, то обратиться через переменную например result
int _id = result.ID;
string _name = result.NAME;
Или если в dgv было выделено несколько строк, то аналогично обработать в foreach.
3) Как задать свои имена заголовков столбцов?
Выдержка из правил форума: Не стоит отправлять в поиск, не хотите отвечать пройдите мимо. Хотите помочь, пишите конкретный ответ.

Последний раз редактировалось dima1257; 14.09.2015 в 02:39. Причина: 3й вопрос
dima1257 вне форума Ответить с цитированием
Старый 16.09.2015, 19:52   #2
Akeloya
Форумчанин
 
Регистрация: 27.01.2014
Сообщений: 115
По умолчанию

Цитата:
Сообщение от dima1257 Посмотреть сообщение
Добрый день.
Автоматически сгенерировал модель БД из VS2010.
Делаю запрос.
Код:
var res = from c in context.USERS where c.STATUS == 1 orderby c.ID SELECT new {c.ID, c.NAME};
dgv.DataSource = res;
Данные в dataGridView загружены, но
1) не работает сортировка по заголовку столбца.
2) Как их корректно извлечь? То есть если извлекли 1 запись, то обратиться через переменную например result
int _id = result.ID;
string _name = result.NAME;
Или если в dgv было выделено несколько строк, то аналогично обработать в foreach.
3) Как задать свои имена заголовков столбцов?
Если отвечать не задумываясь, то:
3) Как задать свои имена заголовков столбцов?
как-то так
var res = from c in context.USERS where c.STATUS == 1 orderby c.ID SELECT new {c.ID Хрень, c.NAME ДвойнаяХрень};
2) Вы должны передать в грид набор объектов. Тогда при обращении к строке или ячейке, вам достаточно будет понять к которому объекту вы обратились и по колонке (если речь идет о ячейке) которое поле задействованно. Но в целом, при правильной установке взаимосвязи между объектами и гридом, изменения внесенные в ячейку отразятся на объекте автоматически.
1) Поскольку вы передали в грид объекты, а не наборы строк она и не будет работать. Для этого вам необходимо реализовать соовтетствующее событие и обработчики сортировки, потому как грид не настолько умный, чтобы уметь определять что за объекты вы подсунули ему.
https://msdn.microsoft.com/ru-ru/lib...or=-2147217396
Akeloya вне форума Ответить с цитированием
Старый 21.09.2015, 10:14   #3
dima1257
Пользователь
 
Аватар для dima1257
 
Регистрация: 16.11.2012
Сообщений: 66
По умолчанию

3) Так не получается. Подчеркивает Хрень и ДвойнаяХрень.
2) Здесь получается что в гриде анонимные объекты. Но в принципе есть решение. Создать класс
Код:
public class emp
        {
            [DisplayName("Хрень")]
            public int id { get; set; }

            [DisplayName("ДвойнаяХрень")]
            public string name{ get; set; }
        }
и далее так
Код:
var res = from c in context.USERS where c.STATUS == 1 orderby c.ID SELECT new emp{id = c.ID, name = c.LOGTIME};
Ну и это решит 3й вопрос т.к. можно задать DisplayName.
1) Здесь вроде понятно. Надо пробовать.
Выдержка из правил форума: Не стоит отправлять в поиск, не хотите отвечать пройдите мимо. Хотите помочь, пишите конкретный ответ.
dima1257 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Entity framework ts-alan Базы данных (ADO.NET, LinqToSql, ORM Entity Framework, NHibernate) 2 07.07.2015 15:55
Entity framework ts-alan Базы данных (ADO.NET, LinqToSql, ORM Entity Framework, NHibernate) 2 30.05.2015 10:56
Entity framework ts-alan Базы данных (ADO.NET, LinqToSql, ORM Entity Framework, NHibernate) 3 29.07.2014 02:03
Entity framework One vs Zero-or-One ts-alan Базы данных (ADO.NET, LinqToSql, ORM Entity Framework, NHibernate) 2 23.04.2014 15:38
entity-framework в wpf anlu C# (си шарп) 13 02.06.2012 12:31