LINQ to SQL Inheritance
[Column(IsDiscriminator=true)]
после каждой перегенерациине, это не рабочий вариант в реальном проекте
конечно, несложно написать свою генерилку, но че та не хочется
Руками подразумевается написать какую нибудь утилиту и запускать ее в батнике.
Используй EF. Думаю с этим должно быть по проще.
Идеологически LINQtoSQL, имхо, более строгий. Цели EF ваще какие-то туманные..., возиться с очередным сторонней сырой мепинг библиотекой совсем желания нет, вот ежели комьюнити начнет ее активно юзать, в чем я сильно сомневаюсь, тогда еще стоит посмотреть. А пока это выглядит, как затыкание дыры — типа у майкрософта нет полноценного ORM.
С наследованием.а где там храниться информация о наследовании, если все генериться по схеме БД? по твоей ссылке я этого не нашел.
Думается мне что оно хранится в csdl и пишется руками.
Думается мне что оно хранится в csdl и пишется руками.надо ли мерджить автосгенеренное с написанным руками? если надо, то как?
надо ли мерджить автосгенеренное с написанным руками? если надо, то как?partial?
Как минимум можно этот файл не генирить а писать руками.
надо ли мерджить автосгенеренное с написанным руками? если надо, то как?csdl это вроде не сишарп
partial?
Оставить комментарий
6yrop
насколько я понимаю, в LINQtoSQL наследованием вообще не надо пользоваться. Оправданием этому служит то, что наследование идеологически неправильная вещь в контексте LINQtoSQL. Т.е. LINQtoSQL это (прям из названия) язык запросов для реляционных данных, а там такого понятия как наследование нет (ссылка).Изначально вопрос был сугубо практический. Как синхронизовать схему БД и C# классы? Как написано в MSDN для не игрушечных проектов надо использовать утилиту командной строки SQLMetal. Но как выяснилось SQLMetal не поддерживает наследование.