4

Я понимаю, как добавлять соглашения к первому (с миграциями) коду. Я успешно выполнил имена таблиц и даже изменил поля идентификатора GUID на некластеризованные.Entity Framework 6.1.1 Конвенция о присвоении имен для индексов

Но я не нашел, как изменить индексное имя по умолчанию, которое предоставляет EF, когда имя не указано.

[Index(IsUnique = true)] 
public string Code { get; set; } 

[Index] 
public string Description { get; set; } 

У меня эти два требования. Верхний индекс должен быть назван UX_[schema]_[table]_Code, второй IX_[schema]_[table]_Description

У меня также есть необходимость поддержки нескольких индексов столбцов, где IsUnique еще будет UX, но раздел колонка представляет собой комбинацию Camel Case всех столбцов (например, UX_[schema]_[table]_CodeDescription если две колонки выше, где в том же индексе.

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

Заранее благодарен

ответ

-1

Вы пробовали эту аннотацию: [Index («IndexName»)] или для примера:

[Index("IndexName", IsUnique = true)] 
public string Code { get; set; } 
+2

Да, это то, как мы в настоящее время становится вокруг вопроса. Но это позволяет нашим разработчикам создавать любое имя, которое они хотят, а не следовать стандартам, которые у нас есть. Вопрос был в том, как я могу добавить соглашение для обозначения индексов. – Allan

 Смежные вопросы

  • Нет связанных вопросов^_^