powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Связь один к одному EF Code First
25 сообщений из 357, страница 5 из 15
Связь один к одному EF Code First
    #38795717
viton-zizu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt
Спасибо, не все правдо догнал, но попробую разобраться))


Ребят, по советуйте, пробую AutoComplete в textbox, Класс который предлагает варианты для автозаполнения textbox. Варианты для выпадающего списка генерю с помощью линк, получается каждый раз когда пользователь забивает этот textbox, в базу идет запрос. Я вот думаю, это правильно вообще!? Или сделать запрос один рас а потом уже этот массив строк где-нибудь хранить, но где тогда!? Вот голову ломаю как бы правильней сделать
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38795827
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
viton-zizu, а чем запрос не устраивает? Долго выполняется?

Хранить можно на клиенте, в кэше. Можно elasticsearch заюзать. Зависит от конкретной задачи.

А для начала например можно LINQ запрос оптимизировать, или вообще переписать без использования LINQ.
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38798136
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAhVostt, я так понял, что человек хочет получить полный граф объекта, а ты ему только часть полей зачем-то предлагаешь :)

Ну так а чего морочиться, надо сразу всю базу данных в память загружать!
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38798188
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttskyANAhVostt, я так понял, что человек хочет получить полный граф объекта, а ты ему только часть полей зачем-то предлагаешь :)

Ну так а чего морочиться, надо сразу всю базу данных в память загружать! Мог бы промолчать, или извиниться за невнимательность. Зачем так толсто троллить?
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38799010
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAМог бы промолчать, или извиниться за невнимательность. Зачем так толсто троллить?

Какая невнимательность? Что ещё за наезд? Я человеку предложил взять не «часть полей», а только то, что ему нужно. При чём под это определение могут попадать не поля, а целые объекты. Какие проблемы?

И что такое «полный граф» объекта? Вариант с Include -- это по сути и есть указание «то, что нужно», только тупой и уродский. И не исключена ситуация, что «полный граф» это и будет вся база данных.

В общем ты сам чего-то сморозил.
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38799200
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt, у ТСа в базе, в таблице Persons содержаться персональные данные каких-то людей:
Код: c#
1.
2.
3.
4.
5.
6.
public class Person
{
    public int Id { get; set; }
    public string Name { get; set; }
    public DateTime Date { get; set; }
}


и есть таблица каких-то карточек (Cards), что заведены для этих людей:
Код: c#
1.
2.
3.
4.
5.
6.
public class Card
{
    public int Id { get; set; }      
    public int CardNumber { get; set; }
    public Person Person{ get; set; }
}


ТС хочет выбрать данные определённой карточки по её идентификатору:
Код: c#
1.
2.
var db = new MyDbContext()
var card = db.Cards.Find(id);


Но такой запрос возвращает результат без персональных данных.
Чтобы включить последние в результат запроса, ТСу предложили использовать Include().

А ты сказал, что так плохо и начал на каких-то абстрактных примерах утверждать, что данные о Person вообще подгружать не надо.

Вообщем фигня какая-то :)
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38799203
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAсодержаться содержатсяпоправил
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38799318
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

ну я смотрел описание - include в ef действительно нежедательно использовать, кроме самых простых случаев
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38799333
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAНо такой запрос возвращает результат без персональных данных.
Чтобы включить последние в результат запроса, ТСу предложили использовать Include().

А ты сказал, что так плохо и начал на каких-то абстрактных примерах утверждать, что данные о Person вообще подгружать не надо.

Вообщем фигня какая-то :)

И повторю: нет, не надо, если они не нужны. Если нужны, включаешь Person в запрос (LINQ), или получаешь его «лениво». Это единый и полностью управляемый способ получать данные. С помощью Include, например, нельзя указать брать из базы только те данные, которые не помечены как удалённые. В общем, я без понятия зачем вообще этот Include добавили в интерфейс. Бредятина какая-то.
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38799341
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttЕсли нужны, включаешь Person в запрос (LINQ), или получаешь его «лениво». Это единый и полностью управляемый способ получать данные.Дак вот и дай ТСУ пример, как ему вытащить полный объект типа Card по Id, а не разглагольствуй про проекции, возвращаемые абстрактными репозиториями.
Разве это так сложно для тебя?
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38799343
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosskyANA,

ну я смотрел описание - include в ef действительно нежедательно использовать, кроме самых простых случаевА я где-то с этим спорил? Мне не понравилось, что вместо нормального объяснения, ТСу предлагается совершенно не то, что ему надо.
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38799344
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAДак вот и дай ТСУ пример, как ему вытащить полный объект типа Card по Id, а не разглагольствуй про проекции, возвращаемые абстрактными репозиториями.
Разве это так сложно для тебя?

Ты бредишь что ли? Ты сам-то до сих пор так и не предложил универсальный метод типа GetFullObjectById(), чего ты от меня хочешь? Укажешь ли ты что тебе брать через Include или через LINQ -- это всё равно чёткое указание что брать. Я сказал, что Include гумно, не пользуйтесь им никогда, лучше LINQ, проекции, Lazy -- по вкусу. Какие претензии?
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38799346
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAМне не понравилось, что вместо нормального объяснения, ТСу предлагается совершенно не то, что ему надо.

Ааа.. так всё-таки экстрасенсы вышли из отпуска? Теперь будем знать
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38799348
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

lazy в ef по описанию тоже говно (читает только один раз)
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38799349
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
там какой то Load есть у ссылки, может лучше
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38799350
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как у DataTable :)
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38799355
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRoshVostt,

lazy в ef по описанию тоже говно (читает только один раз)

Lazy делает ровно то, что требуется. Какое же это говно? С учётом кеширования, которое прикручивается к EF, это решает проблемы с лишними запросами к БД. Так всё пучком
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38799358
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttskyANAДак вот и дай ТСУ пример, как ему вытащить полный объект типа Card по Id, а не разглагольствуй про проекции, возвращаемые абстрактными репозиториями.
Разве это так сложно для тебя?

Ты бредишь что ли? Ты сам-то до сих пор так и не предложил универсальный метод типа GetFullObjectById(), чего ты от меня хочешь? Укажешь ли ты что тебе брать через Include или через LINQ -- это всё равно чёткое указание что брать. Я сказал, что Include гумно, не пользуйтесь им никогда, лучше LINQ, проекции, Lazy -- по вкусу. Какие претензии?Обиделся что-ли? К чему бессмысленный срач разводишь?

Я не пользуюсь EF и QueryableExtensions, вот и не предлагаю ничего.

Ты согласен, что ТСу нужен полный объект, а не проекция?
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38799360
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttskyANAМне не понравилось, что вместо нормального объяснения, ТСу предлагается совершенно не то, что ему надо.

Ааа.. так всё-таки экстрасенсы вышли из отпуска? Теперь будем знать Ты меня поддеть что-ли пытаешься? :) Не нужно быть телепатом, чтобы посмотрев на куски кода ТС, понять, чего он хочет.
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38799389
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAhVosttпропущено...


Ты бредишь что ли? Ты сам-то до сих пор так и не предложил универсальный метод типа GetFullObjectById(), чего ты от меня хочешь? Укажешь ли ты что тебе брать через Include или через LINQ -- это всё равно чёткое указание что брать. Я сказал, что Include гумно, не пользуйтесь им никогда, лучше LINQ, проекции, Lazy -- по вкусу. Какие претензии?Обиделся что-ли? К чему бессмысленный срач разводишь?

Я не пользуюсь EF и QueryableExtensions, вот и не предлагаю ничего.

Ты согласен, что ТСу нужен полный объект, а не проекция?

Вот-вот, ты не пользуешься EF и ничего не предлагаешь. Ещё твой бессмысленный коммент:

skyANAЗабавный выходит топик. Вроде как EF должен ускорить разработку, а тут танцы с бубном какие-то выходят.

Никаких танцев с бубном. Просто ты этот инструмент не знаешь, следовательно я не понимаю смысла твоих наездов.

Так, для справки.

Полный объект, это совокупность его полей. Навигационные поля нужны для построения запросов в LINQ, хотя по ошибке воспринимаются как часть содержимого объекта -- но это не так, как бы оно не выглядело. Данные по навигационным полям не являются частью полного объекта. Так что ещё раз объясни, что ты хочешь донести?

Я топикастеру дал совет, каким образом собирать нужный срез данных, с помощью проекций, с помощью LINQ запросов, или получать данные «лениво», и дал совет не использовать Include. Ты с чем конкретно не согласен?
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38799390
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAТы меня поддеть что-ли пытаешься? :) Не нужно быть телепатом, чтобы посмотрев на куски кода ТС, понять, чего он хочет.

Чего он хочет я не знаю, уже было достаточно сказано и про организацию связей 1-1 и как получать связанные данные. Пока ТС дополнительных вопросов не задавал. Значит всё в ажуре.
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38799396
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt, зачем ты сюда ещё и навигационные поля-то притянул? ТС о них ничего не говорил :)
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38799400
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttПока ТС дополнительных вопросов не задавал. Значит всё в ажуре.А зачем ему вопросы задавать по тому, что ему не нужно? :) А как нужно у него уже работате: 16752158 .
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38799402
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttЧего он хочет я не знаю.Ты меня разочаровал. Код же тривиальный ( 16752158 ), по нему всё понятно.
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38799413
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAhVostt, зачем ты сюда ещё и навигационные поля-то притянул? ТС о них ничего не говорил :)

Код: c#
1.
2.
3.
4.
5.
6.
public class Card
{
    public int Id { get; set; }      
    public int CardNumber { get; set; }
    public Person Person{ get; set; }
}



А это что, по-твоему?
...
Рейтинг: 0 / 0
25 сообщений из 357, страница 5 из 15
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Связь один к одному EF Code First
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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