Добавление индекса в Entity Framework 7 с кодом первые миграции в поле, которое является иностранным ключомC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Добавление индекса в Entity Framework 7 с кодом первые миграции в поле, которое является иностранным ключом

Сообщение Anonymous »

Я думаю, что это будет легко (знаменитые последние слова), но я новичок в EF7, а код First Concept в целом и .NET 5 и EF7 на данный момент относительно новичок, так что там еще мало. Я преобразую проект из старой школы ASP 2.0 в .net 5, и я воссоздаю всю структуру базы данных, чтобы кодовые первые миграции для меня - хороший выбор для меня здесь. Я в основном отслеживаю рекламу «Хит -счет» по месяцам и году. Я хочу поместить уникальный индекс в рекламе «AdvertisementId», «Год», месяц », и я, конечно, знаю, как это сделать в SQL, но EF-код сначала кричит на меня так, как я делаю: < /p>
public class Advertisement
{
public int ID { get; set; }

[Required]
public string ImageURL { get; set; }

[Required]
public string DestinationURL { get; set; }

//....Removing other fields you don't care about
}

public class AdvertisementHistory
{
public int ID { get; set; }

[Required]
public Advertisement Advertisement { get; set; }

[Required]
public int Year { get; set; }

[Required]
public int Month { get; set; }

[Required]
public int Clicked { get; set; }

//....Removing other fields you don't care about
}

public class ApplicationDbContext : IdentityDbContext
{
public DbSet Advertisements { get; set; }
public DbSet AdvertisementHistory { get; set; }
//...Removing other classes you don't care about

protected override void OnModelCreating(ModelBuilder builder)
{
base.OnModelCreating(builder);

builder.Entity()
.HasIndex(p => new { p.Advertisement, p.Year, p.Month })
.IsUnique();
}
}
< /code>
Затем я разбиваю командное окно, так как у нас нет консоли проекта для .net 5 ef7: < /p>

cmd> dnx ef Migration /> {......... .INDEX CALL Все работает нормально, и он генерирует код, чтобы сделать правильный индекс (хотя и плохо, так как мне нужен идентификатор рекламы). Но это означает, что это определенно связано с тем, что я использую поле в своем индексе, который является иностранным ключом. Я попробовал кучу различных вариантов и аннотаций на классах, но ничто не дает мне чистой миграции. Вот почему я думаю, что мне не хватает чего -то очень простого, так как это не необычная концепция.>

Подробнее здесь: https://stackoverflow.com/questions/358 ... field-that
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • .Net Framework & Entity Framework: не сохранение вложенной коллекции организации, связанной с иностранным ключом
    Anonymous » » в форуме C#
    0 Ответы
    29 Просмотры
    Последнее сообщение Anonymous
  • Организация основных отношений с иностранным ключом
    Anonymous » » в форуме C#
    0 Ответы
    20 Просмотры
    Последнее сообщение Anonymous
  • Организация основных отношений с иностранным ключом
    Anonymous » » в форуме C#
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Неверное состояние модели с иностранным ключом
    Anonymous » » в форуме C#
    0 Ответы
    9 Просмотры
    Последнее сообщение Anonymous
  • Неверное состояние модели в онпосте с иностранным ключом
    Anonymous » » в форуме C#
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»