Гость
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Застрял с EF CF Foreign Key Constraint - что не так с моделью? / 25 сообщений из 30, страница 1 из 2
25.03.2015, 10:00
    #38915988
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Застрял с EF CF Foreign Key Constraint - что не так с моделью?
Прошу помощи.

Модель(самый минимум):

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
class letter
{
public Guid id {get;set;}
public String subject  {get;set;}
}

class sended_letter
{
public Guid id {get;set;}
public Guid letterID{get;set;}
public DateTime sended{get;set;}
}



Как нужно разбавить/добавить/настроить всё это чтобы в EF CF:
1. sended_letter удалялся свободно.
2. letter при удалении удалял связанные sended_letter - это в идеале. Если никак - то не надо.
3. В sended_letter не было бы несвязанных с letter записей.

Главным образом проблема в удалении sended_letter - мешает ограничение внешнего ключа. Почему оно мешает - не понимаю.

Цели могу достигнуть дропнув это ограничение, но это :
1. Не системно.
2. Вылетает п.3

Перепробовал всё, и аннотации и мутный Fluent - всё чего добиваюсь - приходится пересоздавать БД. ((((
...
Рейтинг: 0 / 0
25.03.2015, 12:05
    #38916233
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Застрял с EF CF Foreign Key Constraint - что не так с моделью?
Из того, что удалось выяснить:

Модели как минимум должны выглядеть вот так:

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
class letter
{
public Guid id {get;set;}
public String subject  {get;set;}
public Guid sended_letterID {get;set;}
public virtual sended_letter sended_letter {get;set;}
}

class sended_letter
{
public Guid id {get;set;}
public Guid letterID{get;set;}
public DateTime sended{get;set;}
}
...
Рейтинг: 0 / 0
25.03.2015, 12:08
    #38916243
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Застрял с EF CF Foreign Key Constraint - что не так с моделью?
Но EF CF не поддерживает one-to-one foreign key associations, и поэтому надо переделать модели в


Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
class letter
{
public Guid id {get;set;}
public String subject  {get;set;}
public virtual ICollection<sended_letter> sended_letters {get;set;}
}

class sended_letter
{
public Guid id {get;set;}
public Guid letterID{get;set;}
public DateTime sended{get;set;}
}



И с слое BL контролировать, чтобы sended_letter был один.
...
Рейтинг: 0 / 0
25.03.2015, 17:55
    #38916847
Axeleron
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Застрял с EF CF Foreign Key Constraint - что не так с моделью?
Monochromatique,
Все хорошо, только я бы переделал так:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
public class Letter
{
public Guid Id {get;set;}
public String Subject  {get;set;}
public virtual ICollection<SentLetter> SentLetters {get;set;}
}

public class SentLetter
{
public Guid Id {get;set;}
public Guid LetterId{get;set;}
public DateTime Sent{get;set;}
}
...
Рейтинг: 0 / 0
25.03.2015, 18:03
    #38916859
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Застрял с EF CF Foreign Key Constraint - что не так с моделью?
AxeleronMonochromatique,
Все хорошо, только я бы переделал так:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
public class Letter
{
public Guid Id {get;set;}
public String Subject  {get;set;}
public virtual ICollection<SentLetter> SentLetters {get;set;}
}

public class SentLetter
{
public Guid Id {get;set;}
public Guid LetterId{get;set;}
public DateTime Sent{get;set;}
}




Вот ровно 10 минут назад это сделал! Назвал поля тупо по именам таблиц/сущностей.
И таки убрал вот это:

Код: c#
1.
public virtual ICollection<SentLetter> SentLetters {get;set;}
...
Рейтинг: 0 / 0
25.03.2015, 18:04
    #38916861
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Застрял с EF CF Foreign Key Constraint - что не так с моделью?
не не, в итоге вот как получилось.


public class Letter
{
public Guid Id {get;set;}
public String Subject {get;set;}

}

public class SentLetter
{
public Guid Id {get;set;}
public Guid LetterId{get;set;}
public virtual Letter Letter{get;set;}
public DateTime Sent{get;set;}
}
...
Рейтинг: 0 / 0
25.03.2015, 18:05
    #38916862
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Застрял с EF CF Foreign Key Constraint - что не так с моделью?
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
public class Letter
{
public Guid Id {get;set;}
public String Subject {get;set;}

}

public class SentLetter
{
public Guid Id {get;set;}
public Guid LetterId{get;set;}
public virtual Letter Letter{get;set;}
public DateTime Sent{get;set;}
}
...
Рейтинг: 0 / 0
25.03.2015, 18:07
    #38916866
Axeleron
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Застрял с EF CF Foreign Key Constraint - что не так с моделью?
Monochromatique,
А почему нельзя одним классом Letter обойтись? Как-то смысл в двух потерялся.
...
Рейтинг: 0 / 0
25.03.2015, 18:09
    #38916868
Axeleron
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Застрял с EF CF Foreign Key Constraint - что не так с моделью?
Связь стала 1 к 1, логичнее было бы так:
Код: c#
1.
2.
3.
4.
5.
6.
public class Letter
{
public Guid Id {get;set;}
public String Subject {get;set;}
public DateTime? Sent{get;set;}
}
...
Рейтинг: 0 / 0
25.03.2015, 18:17
    #38916871
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Застрял с EF CF Foreign Key Constraint - что не так с моделью?
AxeleronСвязь стала 1 к 1, логичнее было бы так:
Код: c#
1.
2.
3.
4.
5.
6.
public class Letter
{
public Guid Id {get;set;}
public String Subject {get;set;}
public DateTime? Sent{get;set;}
}



Не все письма будут отправлены. O_O

Да и потом - это всё-таки разные области. Для меня.

Я стараюсь, чтобы за одну модель отвечал один контроллер.

Я не десять контроллеров херачат всё в одну модель.

Фффффу, аж отпустило.
...
Рейтинг: 0 / 0
25.03.2015, 18:28
    #38916875
Axeleron
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Застрял с EF CF Foreign Key Constraint - что не так с моделью?
MonochromatiqueНе все письма будут отправлены. O_O
Поэтому DateTime? Sent.

MonochromatiqueДа и потом - это всё-таки разные области. Для меня.
Странное разграничение. Чем области разные? Только флагом Отправлен/Неотправлен?

MonochromatiqueЯ стараюсь, чтобы за одну модель отвечал один контроллер.
Это какой-то новый дезайн паттерн? Сам изобрел вел...?
...
Рейтинг: 0 / 0
25.03.2015, 18:36
    #38916879
Axeleron
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Застрял с EF CF Foreign Key Constraint - что не так с моделью?
MonochromatiqueЯ стараюсь, чтобы за одну модель отвечал один контроллер.
Я не десять контроллеров херачат всё в одну модель.
Не вижу проблемы. Если более одного контролера работают с одной и той же моделью, это нормально.
...
Рейтинг: 0 / 0
25.03.2015, 19:10
    #38916899
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Застрял с EF CF Foreign Key Constraint - что не так с моделью?
AxeleronMonochromatiqueЯ стараюсь, чтобы за одну модель отвечал один контроллер.
Я не десять контроллеров херачат всё в одну модель.
Не вижу проблемы. Если более одного контролера работают с одной и той же моделью, это нормально.



Это скучно.
...
Рейтинг: 0 / 0
25.03.2015, 19:12
    #38916900
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Застрял с EF CF Foreign Key Constraint - что не так с моделью?
AxeleronЭто какой-то новый дезайн паттерн? Сам изобрел вел...?

Угу. Restful называется.
...
Рейтинг: 0 / 0
25.03.2015, 19:14
    #38916904
Axeleron
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Застрял с EF CF Foreign Key Constraint - что не так с моделью?
MonochromatiqueУгу. Restful называется.
Не вижу связи. Поясни.
...
Рейтинг: 0 / 0
25.03.2015, 19:51
    #38916934
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Застрял с EF CF Foreign Key Constraint - что не так с моделью?
AxeleronMonochromatiqueУгу. Restful называется.
Не вижу связи. Поясни.

Даже затрудняюсь.
Можно и 150 полей в модель напихать - кому что нравится.
...
Рейтинг: 0 / 0
25.03.2015, 19:54
    #38916937
Axeleron
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Застрял с EF CF Foreign Key Constraint - что не так с моделью?
MonochromatiqueAxeleronпропущено...

Не вижу связи. Поясни.

Даже затрудняюсь.
Можно и 150 полей в модель напихать - кому что нравится.
Можно и больше... А нужно? И как это связано с RESTful - ты так и не пояснил.
...
Рейтинг: 0 / 0
25.03.2015, 19:55
    #38916941
Axeleron
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Застрял с EF CF Foreign Key Constraint - что не так с моделью?
Monochromatique,
И вообще с каких пор RESTful - дизайн паттер?!
...
Рейтинг: 0 / 0
25.03.2015, 20:02
    #38916947
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Застрял с EF CF Foreign Key Constraint - что не так с моделью?
AxeleronMonochromatique,
И вообще с каких пор RESTful - дизайн паттер?!

Не знаю - ты его так назвал. Да и почему бы и нет? Подход и рекоменадции.
...
Рейтинг: 0 / 0
25.03.2015, 20:06
    #38916954
Axeleron
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Застрял с EF CF Foreign Key Constraint - что не так с моделью?
MonochromatiqueУгу. Restful называется.
Ты ничего не попутал? Ты же изобрел свой паттерн и назвал его RESTful, балбес!
...
Рейтинг: 0 / 0
25.03.2015, 20:08
    #38916956
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Застрял с EF CF Foreign Key Constraint - что не так с моделью?
AxeleronMonochromatiqueУгу. Restful называется.
Ты ничего не попутал? Ты же изобрел свой паттерн и назвал его RESTful, балбес!

Ты чо хамишь?
...
Рейтинг: 0 / 0
25.03.2015, 20:09
    #38916958
Axeleron
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Застрял с EF CF Foreign Key Constraint - что не так с моделью?
Monochromatique,
Понятно все с тобой... Ну поголоси, покричи теперь. Авось полегше станет, отпустит.
...
Рейтинг: 0 / 0
25.03.2015, 20:10
    #38916961
Axeleron
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Застрял с EF CF Foreign Key Constraint - что не так с моделью?
MonochromatiqueУгу. Restful называется.
Иди погугли и почитай что такое RESTful, дурочок
...
Рейтинг: 0 / 0
25.03.2015, 20:13
    #38916964
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Застрял с EF CF Foreign Key Constraint - что не так с моделью?
AxeleronMonochromatiqueУгу. Restful называется.
Иди погугли и почитай что такое RESTful, дурочок

Мля, откуда только такое лезет))
...
Рейтинг: 0 / 0
25.03.2015, 20:14
    #38916967
Axeleron
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Застрял с EF CF Foreign Key Constraint - что не так с моделью?
MonochromatiqueМля, откуда только такое лезет))
Мля, откуда только такие как ты лезут
...
Рейтинг: 0 / 0
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Застрял с EF CF Foreign Key Constraint - что не так с моделью? / 25 сообщений из 30, страница 1 из 2
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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