powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / из DbFirst -> Code First
2 сообщений из 27, страница 2 из 2
из DbFirst -> Code First
    #38106658
Lord British
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ, ок. Просто такое может встретиться и в чужих схемах и т. п.. Вобщем интересны рассказы, кто как строит свои лисопеды, самосвалы. Привожу картинки для наглядности и понимания.

Пусть есть такой кусок в схеме БД (TPT Inheritance)



Скрипт


Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
CREATE TABLE [dbo].[ANIMAL](
	[ID_ANIMAL] [int] IDENTITY(1,1) NOT NULL,
	[NAME] [nvarchar](50) NOT NULL,
 CONSTRAINT [PK_ANIMAL] PRIMARY KEY CLUSTERED 
(
	[ID_ANIMAL] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]
GO

CREATE TABLE [dbo].[DOG](
	[ID_DOG] [int] NOT NULL,
	[DOG_SPEC_PROP1] [nvarchar](50) NOT NULL,
	[DOG_SPEC_PROP2] [nvarchar](50) NOT NULL,
 CONSTRAINT [PK_DOG] PRIMARY KEY CLUSTERED 
(
	[ID_DOG] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]
GO

CREATE TABLE [dbo].[CAT](
	[ID_CAT] [int] NOT NULL,
	[CAT_SPEC_PROP_1] [nvarchar](50) NULL,
	[CAT_SPEC_PROP_2] [nvarchar](50) NULL,
 CONSTRAINT [PK_CAT] PRIMARY KEY CLUSTERED 
(
	[ID_CAT] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]
GO

ALTER TABLE [dbo].[CAT]  WITH CHECK ADD  CONSTRAINT [FK_CAT_ANIMAL] FOREIGN KEY([ID_CAT])
REFERENCES [dbo].[ANIMAL] ([ID_ANIMAL])
ON DELETE CASCADE
GO
ALTER TABLE [dbo].[CAT] CHECK CONSTRAINT [FK_CAT_ANIMAL]
GO

ALTER TABLE [dbo].[DOG]  WITH CHECK ADD  CONSTRAINT [FK_DOG_ANIMAL] FOREIGN KEY([ID_DOG])
REFERENCES [dbo].[ANIMAL] ([ID_ANIMAL])
ON DELETE CASCADE
GO
ALTER TABLE [dbo].[DOG] CHECK CONSTRAINT [FK_DOG_ANIMAL]
GO




EF Designer понимает это как:


Руками приходится обьяснять ему что это на самом деле так:


Так вот вопрос самописные тулзы также поступают, как EF Designer или у вас есть хитрые готовые алгоритмы анализа схемы, которые пилят годноту сразу?
...
Рейтинг: 0 / 0
из DbFirst -> Code First
    #38106670
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lord British, не лей на радикал - это зло. Лучше сожми несколько и архивом приаттачь. Либо в пеинте смержи.
...
Рейтинг: 0 / 0
2 сообщений из 27, страница 2 из 2
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / из DbFirst -> Code First
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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