У меня есть таблицы FundAllocation & Распределение.База данных Entity Framework Первая таблица поиска вставки строк
FundAllocation
- FundAllocationId (Primary Key, Identity)
- AllocationRefId
Allocation
- AllocationId (Primary Key, Identity)
- Allocation
Соответствующие DbSets для того же являются:
public DbSet<FundAllocation> FundAllocation { get; set; }
public DbSet<Allocation> Allocation { get; set; }
Ниже перечислены объекты:
public class FundAllocation
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int FundAllocationId { get; set; }
public int AllocationRefId { get; set; }
[ForeignKey("AllocationRefId")]
public virtual Allocation Allocation { get; set; }
}
public class Allocation
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int AllocationId { get; set; }
[Column("Allocation")]
public string AllocationTitle { get; set; }
}
В таблице распределения является таблица поиска. У объекта FundAllocation может быть выделение из таблицы поиска или вообще отсутствует. Однако, когда я добавляю новый объект FundAllocation в DbSet (где FundAllocation.AllocationRefIf равен существующему AllocationId), он добавляет новую таблицу распределения в таблицу распределения. Как я могу предотвратить это новое добавление распределения в таблицу базы данных?