Vb.net EF代码第一级级联删除不工作
我有这个模型定义,我想对它进行级联删除Vb.net EF代码第一级级联删除不工作,vb.net,entity-framework,cascade,cascading-deletes,Vb.net,Entity Framework,Cascade,Cascading Deletes,我有这个模型定义,我想对它进行级联删除 With modelBuilder.Entity(Of dbDimension)() .Property(Function(t) t.dbDimensionID). HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity) .HasKey(Function(t) t.dbDimensionID) .Property(Fun
With modelBuilder.Entity(Of dbDimension)()
.Property(Function(t) t.dbDimensionID).
HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity)
.HasKey(Function(t) t.dbDimensionID)
.Property(Function(t) t.Name).
HasColumnName("DimensionName")
.ToTable("Dimension")
modelBuilder.Entity(Of dbDimension)().
HasRequired(Function(t) t.Model).
WithMany(Function(t) t.mDimensions).
HasForeignKey(Function(t) t.dbModelID_FK).
WillCascadeOnDelete(True)
modelBuilder.Entity(Of dbDimension)().
HasMany(Function(t) t.Cubes).
WithMany(Function(t) t.Dimensions).
Map(Sub(m)
m.ToTable("Dimension-Cube")
m.MapLeftKey("dbDimensionID")
m.MapRightKey("dbCubeID")
End Sub)
End With
当我删除模型时,维度也会被删除,但多对多关系不会被删除。
我能做些什么来解决这个问题
我正在使用Dotconnect(SQLLite)作为数据库驱动程序。默认情况下,SQLite中未启用外键支持。您需要启用它,例如,通过向连接字符串添加“Foreign Key Constraints=On”: 数据源=test_Data.db;外键约束=打开
如果情况并非如此,请向我们发送一个测试项目以支持devart*com,以便我们能够调查问题并为您找到解决方案。感谢您的回复。我试过了,现在当我试图删除带有“Foreign Key Constraints=On”的父级时,我得到了DirectCast(DirectCast(例如,System.Data.Entity.Infrastructure.DbUpdateException).InnerException,System.Data.UpdateException.InnerException,Devart.Data.SQLite.SQLiteException){”由于约束冲突而中止外键约束失败“}”请向我们发送一个小型测试项目,其中包含devart*com支持的必要数据库表(或测试数据库)的定义,以便我们能够调查该问题并为您找到解决方案。