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

Ладно уж, так и быть, поищу за тебя:

http://www.entityframeworktutorial.net/code-first/configure-one-to-one-relationship-in-code-first.aspx
http://stackoverflow.com/questions/3622572/how-to-declare-one-to-one-relationship-using-entity-framework-4-code-first-poco
http://stackoverflow.com/questions/7689532/entity-framework-code-first-one-to-one-relationship

Да ему уже не EF нужен. Нужна статья, как делать выборки с помощью .Select в Linq
Вооот, в точку!) Я просто думаю, где у меня пробел, читаю статьи про Entity а там нигде этого ничего нет!
Вчера гуглил Entity Linq вот это уже другое дело)) Вчера немного на воял по другому,
Код: c#
1.
2.
3.
4.
5.
6.
7.
var cards = db.Cards.Select(c => 
                new {
                    CardNumber = c.CardNumber,
                    Name = c.Person.Name,
                    Date = c.Person.Date
                }
            ).ToList();


круто круто круто)))
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38786269
viton-zizu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ребят, помогите разобраться еще с проблемкой
Ищу по Id карточку, нахожу её но поле Person равно null! Не могу понять как такое может быть? в базе это поле заполнено...
Код: c#
1.
2.
var db = new MyDbContext()
var card = db.Cards.Find(id);


Смотрю в дебаге, а там допустим: Id = 3, CardNumber = 5, Person = null
Смотрю в баз данных: Id = 3, CardNumber = 5, PersonID = 8, т.е. поле точно не пустое...
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
    public class Person
    {
        public int Id { get; set; }

        public string Name { get; set; }

        public System.DateTime Date { get; set; }

    }


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

        public Person Person{ get; set; }
    }


Не могу понять в чем ошибка то?
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38786279
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38786296
viton-zizu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А я вот допустим их Include, так а потом как Find по id сделать в этой объединенной таблице?)
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38786298
viton-zizu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
получилось)
Код: c#
1.
var member = db.Cards.Include(x => x.Person).Where(i => i.Id == id).SingleOrDefault();
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38786301
viton-zizu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Но самое интересное что Id и в одной и в другой таблице полностью совпадают, как ни крути) Можно было этим и не заморачиваться)) хотя лучше конечно по феншую сделать
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38786325
viton-zizu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А можно ли от редактировать только одно поле в строке?
Делаю так
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
                  Person personModel= new Person()
                    {  Id = id
                        TimeBack = System.DateTime.Now,
                    };
var db = new MyDbContext())
            {
                db.Persons.Attach(personModel);
                db.Entry(personModel).State = EntityState.Modified;                
                return db.SaveChanges() > 0;


Ошибка говорит, внутренняя...)
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38786337
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ты пытаешься создать НОВЫЙ экземпляр, а потом присвоить ему id другого существующего экземпляра?
Что ж тебя так заносит-то все время, поменяй траву... на подорожник )

Надо поменять поле - получил сущность из базы, поменял поле, сохранил изменение. Не надо создавать новый экземпляр.
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38786385
viton-zizu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А вот такой вариант у меня работает если все поля заполнить, причем обновляет как надо!
А нету примера другого обновления, а то у меня только такой был))
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38786391
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну вот твой же код:
Код: c#
1.
var member = db.Cards.Include(x => x.Person).Where(i => i.Id == id).SingleOrDefault();

меняешь нужное поле и делаешь db.SaveChanges()
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38786434
viton-zizu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блин, вот по навыдумываешь себе в голове, а тут все так просто оказалось! спасибо большое!)
Буду на выходных дальше Linq осваивать))
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38786443
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Горе от ума" (с)
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38786467
viton-zizu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А еще не нашел, как мне поле CardNumber сделать уникальным? чтобы нельзя было повторяющиеся значения хранить!
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38786478
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38786519
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38786972
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
viton-zizuА я вот допустим их Include, так а потом как Find по id сделать в этой объединенной таблице?)

Забудь навсегда про Include. Никогда не используй Include. Никогда. Слышышь?
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38787166
viton-zizu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttviton-zizuА я вот допустим их Include, так а потом как Find по id сделать в этой объединенной таблице?)

Забудь навсегда про Include. Никогда не используй Include. Никогда. Слышышь?
Почему?) Лучше селектом?)
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38787192
viton-zizu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Облазил эти ссылки, ничего дельного не нашел, только говорят проверяй по базе, если нету такого то значение уникально. Но это же как то неправильно, полюбому должна быть нужная команда!
Код: c#
1.
db.Categories.Where(c => c.<имя атрибута> == <значение>)
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38787228
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
viton-zizu, вопрос нормально задайте.
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38787230
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAviton-zizu, вопрос нормально задайте.я так понимаю, он про это:viton-zizuА еще не нашел, как мне поле CardNumber сделать уникальным? чтобы нельзя было повторяющиеся значения хранить!
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38787232
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.ProskyANAviton-zizu, вопрос нормально задайте.я так понимаю, он про это:viton-zizuА еще не нашел, как мне поле CardNumber сделать уникальным? чтобы нельзя было повторяющиеся значения хранить!Хорошо.

Чтобы нельзя было ХРАНИТЬ повторяющиеся значения, необходимо создать уникальный индекс (UNIQUE INDEX).

А теперь, уважаемый viton-zizu, задайте правильный вопрос гуглу :)
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38787501
viton-zizu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот все вы витиевато подсказываете))
Сделал уже через проверку значения с таблице, благо там не много значений)
Вот допустим нашел вот такую форму [Required] но мой интерпритатор не понимает этого поля, нужно через using что-то подрубить?
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38787505
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
viton-zizuВот допустим нашел вот такую форму [Required]это атрибут, а не форма, если так нечетко формулировать вопросы, можно много чего интересного узнать... кроме того, что нужно viton-zizu но мой интерпритатор не понимает этого поля, нужно через using что-то подрубить?Нужно. А про Object Browser слышал что-нибудь?
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38787507
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
viton-zizuВот все вы витиевато подсказываете))
Сделал уже через проверку значения с таблицеДак переделайте, Вы же играетесь :)
...
Рейтинг: 0 / 0
Связь один к одному EF Code First
    #38787508
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А что такое "мой интерпретатор"?
...
Рейтинг: 0 / 0
25 сообщений из 357, страница 3 из 15
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Связь один к одному EF Code First
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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