Я новичок в EDM, в прошлом я написал довольно много материала для ADO.Net. У меня есть три таблицы:
**Product:**
Prod_ID - PK
**Product_MaxLoan**
Prod_ID - PK
**Product_MinLoan**
Prod_ID - PK
Эти таблицы, размещенные в MS SQL 2005, еще не имеют настроенных FK или ограничений, они должны иметь условное отношение 1 к 1. Например, в каждой строке продукта с идентификатором 1 будет строка в Product_MaxLoan и Product_MinLoan с идентификатором 1.
В Visual Studio 2010 я хочу правильно настроить EDM, чтобы кардинальность была установлена от 1 до 1. Ранее у меня были ограничения FK для таблиц и следующие настройки, однако это позволило бы только кардинальность 0..1 (я полагаю, чтобы учесть тот факт, что Продукт может не иметь Product_MaxLoan или Product_MinLoan).
**Product:**
Prod_ID - PK
**Product_MaxLoan**
ID - PK
Prod_ID - FK
**Product_MinLoan**
ID - PK
Prod_ID - FK
Вопросы:
- Какой совет вы бы дали по настройке этих таблиц в SQL 2005? Для отношений 1 к 1 в EDM вы бы установили FK?
- Можете ли вы настроить отношение PK в SQL 2005, которое EDM будет читать при импорте из базы данных?
- Продукт содержит около 300 свойств, поэтому размещение всех этих данных в одной таблице было бы плохой нормализацией базы данных (отсюда и множество таблиц 1-1). Было бы лучше поместить все эти свойства в один класс EDM? Моя внутренняя реакция состоит в том, чтобы разбить его так, как он структурирован в БД (это мое наследие ADO выходит на первый план), имея класс для каждой логической части продукта.
Ваш совет будет оценен.
С наилучшими пожеланиями,
Отметка