20 lines
865 B
C#
20 lines
865 B
C#
|
using Core.Entities;
|
||
|
using Microsoft.EntityFrameworkCore;
|
||
|
using Microsoft.EntityFrameworkCore.Metadata.Builders;
|
||
|
|
||
|
namespace Infrastructure.Data.Config
|
||
|
{
|
||
|
public class ProductConfiguaration : IEntityTypeConfiguration<Product>
|
||
|
{
|
||
|
public void Configure(EntityTypeBuilder<Product> builder)
|
||
|
{
|
||
|
builder.Property(p => p.Id).IsRequired();
|
||
|
builder.Property(p => p.Name).IsRequired().HasMaxLength(100);
|
||
|
builder.Property(p => p.Description).IsRequired().HasMaxLength(256);
|
||
|
builder.Property(p => p.Price).HasColumnType("decimal(18,2)");
|
||
|
builder.Property(p => p.PictureUrl).IsRequired();
|
||
|
builder.HasOne(b => b.ProductBrand).WithMany().HasForeignKey(p => p.ProductBrandId);
|
||
|
builder.HasOne(t => t.ProductType).WithMany().HasForeignKey(p => p.ProductTypeId);
|
||
|
}
|
||
|
}
|
||
|
}
|