我安装了最新版本的Windows 10(秋季创作者更新)和Visual Studio 2017(15.4版)。
我创建了一个面向主要版本的UWP应用程序,并通过Nuget进行了安装:
- microsoft.entityframeworkcore.tools
- microsoft.entityframeworkcore.sqlserver
下面是我的代码:
[Table("tbProva")]
public class Prova
{
public Prova()
{
Indirizzi = new List<Indirizzo>();
}
[Key]
public Guid Id { get; set; }
[MaxLength(250)]
public string Nome { get; set; }
public ICollection<Indirizzo> Indirizzi { get; set; }
}
public class ProvaConfig : IEntityTypeConfiguration<Prova>
{
public void Configure(EntityTypeBuilder<Prova> builder)
{
builder.HasMany(c => c.Indirizzi)
.WithOne(c => c.Prova)
.HasForeignKey(c => c.IdProva)
.OnDelete(DeleteBehavior.Cascade);
}
}
[Table("tbIndirizzi")]
public class Indirizzo
{
[Key]
public Guid Id { get; set; }
[MaxLength(250)]
public string Strada { get; set; }
[MaxLength(10)]
public string Civico { get; set; }
public Prova Prova { get; set; }
public Guid IdProva { get; set; }
}
public class DcContext : DbContext
{
public DbSet<Prova> tbProva { get; set; }
public DbSet<Indirizzo> tbIndirizzi { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
optionsBuilder.UseSqlServer("Server=Europa;Database=ProvaDb;Trusted_Connection=True;");
}
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.ApplyConfiguration<Prova>(new ProvaConfig());
}
}
如果我运行迁移,会得到以下结果:
PM> Add-Migration poi
System.TypeLoadException: Unable to load type 'System.Globalization.CultureInfo' from assembly 'System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'.
如果我从模型中删除导航属性并且不覆盖OnModelCreating
,它可以正常工作。
谢谢