Entity Framework Code-First — определите некластеризованный ключ для этого EntityType.

Я определил класс сущности с ключом, но я не хочу, чтобы этот ключ был кластером, потому что у меня есть другой индекс кластера в моей сущности, но я получил сообщение об ошибке, когда добавляю атрибут индекса в свою модель,

Кто-нибудь может сказать мне, как определить некластерный ключ????


person Mahdi Khalili    schedule 24.07.2014    source источник
comment
добро пожаловать в stackoverflow, пожалуйста, найдите минутку, чтобы прочитать справочный центр, вы не получите хорошего отзыва, если не предоставите достаточно информации о вашей проблеме (сообщение об ошибке, код, среда и т. д.).   -  person Yuliam Chandra    schedule 25.07.2014
comment
Возможный дубликат создать некластеризованный индекс по первичному ключу структура сущностей 6.0   -  person Michael Freidgeim    schedule 17.02.2018


Ответы (1)


Насколько я знаю, по-прежнему невозможно создать некластеризованные поля первичного ключа как часть вашей первой конфигурации кода.

Однако, если вы используете миграции или находитесь в положении, когда вы можете это сделать, см. следующий рабочий элемент Entity Framework, в котором рассматривается решение с использованием миграции кода сначала (как а также размышления об отсутствии прямой поддержки кода):

http://entityframework.codeplex.com/workitem/614

Этот связанный вопрос также содержит некоторую информацию: EF CodeFirst создает некластеризованный основной ключевой индекс. Это для EF 4.1, но по-прежнему актуально для EF 6.

person Matt Caton    schedule 25.07.2014
comment
в приведенной вами ссылке указано, что это возможно с дополнительной миграцией и указанием сгруппировано в false, но да, вы правы, сначала нет прямого кода.. - person Yuliam Chandra; 25.07.2014
comment
Да, ссылка на рабочий элемент Entity Framework довольно хороша. Интересно, что он ссылается на entityframework. codeplex.com/, которые представляют собой протоколы совещаний по разработке Entity Framework. Я не знал, что они были опубликованы, но теперь буду их читать. Может вас заинтересовать (если вы тоже об этом не знали?), так как я часто вижу ваше имя в вопросах Entity Framework. - person Matt Caton; 25.07.2014
comment
да, я тоже не знал, я думаю, что они могут быстро исправить кластерную вещь, но приостановите ее, потому что это повлияет на другой коммерческий продукт. - person Yuliam Chandra; 25.07.2014
comment
@YuliamChandra спасибо за ваши подсказки, это было полезно, но не могли бы вы сказать мне, где я могу найти первоначальные миграции кода другим словом: где я должен писать операторы, описанные в ссылке? - person Mahdi Khalili; 25.07.2014
comment
Я бы не рекомендовал переходить на первую миграцию кода только для поддержки некластеризованных первичных ключей. Это довольно сложный предмет с несколькими неуклюжими битами на кривой обучения на этом пути. Судя по вашему вопросу, вы не используете инициализаторы базы данных Drop/Create, поэтому я бы просто вручную отредактировал схему таблицы и воссоздал pk как некластеризованный. - person Matt Caton; 25.07.2014