powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / C# EF Code First cascade delete
18 сообщений из 18, страница 1 из 1
C# EF Code First cascade delete
    #38828565
Nechto
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте.

Подскажите пожалуйста, как при помощи DataAnnotation изменить свойство cascade delete в EF Code First.
Код: c#
1.
2.
3.
4.
5.
6.
7.
...
public int IdTable { get; set; }
[Required]
[InverseProperty("Tables")]
[ForeignKey(IdTable)]
public Tab Tab{ get; set; }
...
...
Рейтинг: 0 / 0
C# EF Code First cascade delete
    #38828684
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NechtoПодскажите пожалуйста, как при помощи DataAnnotation изменить свойство cascade delete в EF Code First.

Никак.
...
Рейтинг: 0 / 0
C# EF Code First cascade delete
    #38829371
Nechto
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
hVosttNechtoПодскажите пожалуйста, как при помощи DataAnnotation изменить свойство cascade delete в EF Code First.
Никак.

И действительно не как. Без маппинга, выходит не обойтись

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
     modelBuilder.Entity<TempTable>()
          .HasRequired(s => s.Tab)
          .WithMany()
          .WillCascadeOnDelete(true);

     base.OnModelCreating(modelBuilder);
} 
...
Рейтинг: 0 / 0
C# EF Code First cascade delete
    #38830681
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А чем так испугал маппинг?
...
Рейтинг: 0 / 0
C# EF Code First cascade delete
    #38830722
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУА чем так испугал маппинг?

Не декларативненько. Хотя никто не мешает добавить свои атрибуты и соглашения.
...
Рейтинг: 0 / 0
C# EF Code First cascade delete
    #38830767
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttМСУА чем так испугал маппинг?
Не декларативненько.
Да какая разница. Функционал есть и это главное.
...
Рейтинг: 0 / 0
C# EF Code First cascade delete
    #38830812
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУДа какая разница. Функционал есть и это главное.

Разница есть. Хочется иметь полное представление, глядя на определение объекта, а не стряпать у себя в голове кашу из атрибутов и отдельно нарисованного маппинга — какое в этом есть удовольствие?
...
Рейтинг: 0 / 0
C# EF Code First cascade delete
    #38830940
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttМСУДа какая разница. Функционал есть и это главное.
Разница есть. Хочется иметь полное представление, глядя на определение объекта, а не стряпать у себя в голове кашу из атрибутов и отдельно нарисованного маппинга — какое в этом есть удовольствие?
Разницы нет. Это не каша, а реализация маппинга.
...
Рейтинг: 0 / 0
C# EF Code First cascade delete
    #38831016
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУРазницы нет. Это не каша, а реализация маппинга.

Т.е. ты не пользуешься атрибутами типа [Required], только тру Fluent?
...
Рейтинг: 0 / 0
C# EF Code First cascade delete
    #38831139
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttМСУРазницы нет. Это не каша, а реализация маппинга.
Т.е. ты не пользуешься атрибутами типа [Required], только тру Fluent?
Да, только флюент, он более мощный и решает 100% задач, конфигурацию можно вынести в отдельный слой / класс. То есть имеем чистые поко, а конфа идет отдельно. Мне больше по душе именно такой вариант. Он чистый и лаконичный. Точно так же в OData я через флюент конфигурирую IEdmModel.
...
Рейтинг: 0 / 0
C# EF Code First cascade delete
    #38831284
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУконфигурацию можно вынести в отдельный слой / класс

выбивал ржавым веником из одного новичка эту ересь, фу-фу-фу!! мета + соглашения рулят!
тибе просто никогда не приходилось поддерживать несколько СУБД, и видимо никогда не рпидётся. а если так то уж чо. делой свои ржавые богомерзкие флюенты
...
Рейтинг: 0 / 0
C# EF Code First cascade delete
    #38831286
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУТочно так же в OData я через флюент конфигурирую IEdmModel.

ты просто не умеешь работать с соглашениеями. они круче раз так в 600 этих флюентов. один раз напилил соглашений, подрубаешь сборку и получаешь всё сразу и на блюдешке.
...
Рейтинг: 0 / 0
C# EF Code First cascade delete
    #38831370
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttМСУконфигурацию можно вынести в отдельный слой / класс
выбивал ржавым веником из одного новичка эту ересь, фу-фу-фу!! мета + соглашения рулят!
Эти соглашения - убийцы поко. Пойди и извинись перед новичком за преднамеренную тупость.

hVosttтибе просто никогда не приходилось поддерживать несколько СУБД, и видимо никогда не рпидётся. а если так то уж чо. делой свои ржавые богомерзкие флюенты
У нас обычно "поддерживают" СУБД отдельные DBA. Это так, на всякий случай. А по поводу "мерзких флюентов" с этого момента поподробнее. Каким образом флюент не способен "поддерживать" несколько СУБД?

hVosttМСУТочно так же в OData я через флюент конфигурирую IEdmModel.
ты просто не умеешь работать с соглашениеями. они круче раз так в 600 этих флюентов. один раз напилил соглашений, подрубаешь сборку и получаешь всё сразу и на блюдешке.
Просто ты не умеешь работать с OData. По-другому ты просто не сможешь сделать модель.
...
Рейтинг: 0 / 0
C# EF Code First cascade delete
    #38831986
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУЭти соглашения - убийцы поко. Пойди и извинись перед новичком за преднамеренную тупость.

Эти соглашения -- основной инструмент для конфигурирования EF, и в последней версии позволяют сконфигурировать как маппинг, так и кодогенерацию, по сути они позволяют гораздо больше, чем Fluent. С поко они никак не связаны, так как они универсальные. Ты просто не хочешь разобраться в предмете. Я понимаю, привычки и всё такое, но расти-то как-то надо. Рекомендую освоить технологию Conventions.

МСУУ нас обычно "поддерживают" СУБД отдельные DBA. Это так, на всякий случай. А по поводу "мерзких флюентов" с этого момента поподробнее. Каким образом флюент не способен "поддерживать" несколько СУБД?

Для разных СУБД могут быть разные соглашения. Fluent же всё прокатывает одним катком. Тем более соглашения имеют приоритеты и могу срабатывать как до Fluent, так и отменять действие Fluent полностью. Они универсальные и могу использоваться многократно, а Fluent -- нет (только мерзкий копипаст).

МСУПросто ты не умеешь работать с OData. По-другому ты просто не сможешь сделать модель.

Сказанное тобой означает, что ты даже на половину не знаешь как устроен и работает EF. Для работы OData как раз используются соглашения.
...
Рейтинг: 0 / 0
C# EF Code First cascade delete
    #38832270
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttМСУЭти соглашения - убийцы поко. Пойди и извинись перед новичком за преднамеренную тупость.
Эти соглашения -- основной инструмент для конфигурирования EF, и в последней версии позволяют сконфигурировать как маппинг, так и кодогенерацию, по сути они позволяют гораздо больше, чем Fluent. С поко они никак не связаны, так как они универсальные. Ты просто не хочешь разобраться в предмете. Я понимаю, привычки и всё такое, но расти-то как-то надо. Рекомендую освоить технологию Conventions.
Расти, по всей видимости, придется тебе, ибо ты не понимаешь идеологию поко классов :)

http://msdn.microsoft.com/ru-ru/library/vstudio/dd456853(v=vs.100).aspx Сопоставление сущностей POCO не поддерживается в том случае, если к пользовательским классам данных применены какие-либо из атрибутов сопоставления


Атрибуты убивают идею POCO, я уже писал об этом.

hVosttДля разных СУБД могут быть разные соглашения. Fluent же всё прокатывает одним катком. Тем более соглашения имеют приоритеты и могу срабатывать как до Fluent, так и отменять действие Fluent полностью. Они универсальные и могу использоваться многократно, а Fluent -- нет (только мерзкий копипаст).
Сейчас по факту Fluent содержит в себе 100% функционал, в отличие от атрибутов. Атрибуты - это мусор в классах.

hVosttМСУПросто ты не умеешь работать с OData. По-другому ты просто не сможешь сделать модель.
Сказанное тобой означает, что ты даже на половину не знаешь как устроен и работает EF. Для работы OData как раз используются соглашения.
Не вижу противоречий. Для работы OData как-раз используется Fluent для конфигурации модели. Или ты сможешь сконфигурировать модель без Fluent?
...
Рейтинг: 0 / 0
C# EF Code First cascade delete
    #38832316
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУАтрибуты убивают идею POCO, я уже писал об этом.

эта унылая бестолковая бредятина уже мусолилась и на хабре, и в стековерфлоу. уже давно разумные личности послали этих идейщиков с поко-йокой в глубь лесов. EF прекрасно работает с атрибутами, с помощью атрибутов можно крайне чётко (необходимо и достаточно) выразить замысел ентити модели.

а флюент это однозначные костыли. не сохранилась ссылка, где авторы EF лично признавались в этом общественности.

вообще флюент был нужен, так как в начале механизм соглашений был деревянный и не кастомизируемый. в 6-ой версии они его таки допилили, так что флюент можно смело выкидывать на помойку истории и больше не вспоминать о нём.
...
Рейтинг: 0 / 0
C# EF Code First cascade delete
    #38832319
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУАтрибуты - это мусор в классах.

ты видимо об чото головой ударился
...
Рейтинг: 0 / 0
C# EF Code First cascade delete
    #38832940
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttа флюент это однозначные костыли. не сохранилась ссылка, где авторы EF лично признавались в этом общественности.
Твои бредни просто забавляют. Таки потрудись найти ссылку вместо языкочесания.

hVostt вообще флюент был нужен, так как в начале механизм соглашений был деревянный и не кастомизируемый. в 6-ой версии они его таки допилили, так что флюент можно смело выкидывать на помойку истории и больше не вспоминать о нём.
16970573

Хвост, кончай уже поносить, иногда кажется, что ты упорот. Серьёзно.
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / C# EF Code First cascade delete
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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