Первый вариант хаски основного кода EF, создающий как кластерный индекс, так и уникальное ограничение.C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Первый вариант хаски основного кода EF, создающий как кластерный индекс, так и уникальное ограничение.

Сообщение Anonymous »

У меня есть первое решение веб-API кода .Net Core Entity Framework. Я пытаюсь создать новую модель, используя подход «сначала код». Я использовал опцию «HasKey», но это также создание кластеризованного индекса, а также уникальное ограничение. Кластеризованный индекс можно понять, однако неясно, почему он создает ограничение уникальности. Я не хочу создавать для него дополнительное уникальное ограничение.
Я попробовал приведенный ниже код, но он создает уникальное ограничение.

Код: Выделить всё

[Table("VendorBrandsPromotion")]
public class VendorBrandPromoTable
{
public Guid Id { get; set; }
public Guid VendorId { get; set; }
public string Brand { get; set; }
public string Location { get; set; }
public string CustomerGroup { get; set; }
public bool IsEnableDateValidation { get; set; }
public DateTime? StartDate { get; set; }
public DateTime? EndDate { get; set; }
public string HeaderText { get; set; }
public string BodyText { get; set; }
public string PromotionText { get; set; }
public bool IsActive { get; set; }
public int CreatedBy { get; set; }
public DateTime CreatedDate { get; set; }
public int? UpdatedBy { get; set; }
public DateTime? UpdatedDate { get; set; }

public virtual ICollection
BrandsPromotionProducts { get; set; }
public virtual ICollection
BrandsPromotionImages { get; set; }

//Config
public class DbConfiguration : IEntityTypeConfiguration
{
public void Configure(EntityTypeBuilder builder)
{
builder.HasKey(v => new { v.Id, v.VendorId });
builder.Property(v => v.Brand).HasMaxLength(500).IsRequired();
builder.Property(v => v.Location).HasMaxLength(500);
builder.Property(v => v.CustomerGroup).HasMaxLength(500);
builder.Property(v => v.HeaderText).HasMaxLength(500);
builder.Property(v => v.BodyText).HasMaxLength(1000);
builder.Property(v => v.PromotionText).HasMaxLength(80);
builder.HasMany(v => v.BrandsPromotionProducts).WithOne(v => v.VendorBrandPromo).HasForeignKey(v => new { v.VendorPromotionId }).HasPrincipalKey(v => new { v.Id });
builder.HasMany(v => v.BrandsPromotionImages).WithOne(v => v.VendorBrandPromo).HasForeignKey(v => new { v.VendorPromotionId }).HasPrincipalKey(v => new { v.Id });
}
}
}
что и где я здесь делаю не так?


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

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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