Why is there no update equivalent to WillCascadeOnDelete?

前端 未结 3 670
独厮守ぢ
独厮守ぢ 2021-01-19 04:21

When you\'re setting up a one:many relationship in EF code-first, you can choose whether it should cascade on delete like so:

modelBuilder.Entity

        
相关标签:
3条回答
  • 2021-01-19 04:59

    Entity framework work with relationship through navigation properties, so ON UPDATE CASCADE allready switched on for all such relations.

    Hmm and on the other hand i'm not sure that you can directly change primary key of entity from Entity Framework.

    0 讨论(0)
  • 2021-01-19 04:59

    You can't change the primary key.

    That is a bad practice in general, but particularly when working with an ORM.

    0 讨论(0)
  • 2021-01-19 05:01

    Well, apparently the answer to this is that you should never change the primary key in an ORM, even though DBMS's support the changing of the primary key. Because the assumption is that you will never change the primary key, there's no need for entity framework to allow you to specify whether to cascade on update, because the idea is that that primary key update will never happen.

    Note, though, that this can still be done manually in most databases even if the entity framework ORM doesn't let you do it that way. The DBMS will just use its default behaviour for a cascade update if you do the primary key update, manually, directly in the database.

    0 讨论(0)
提交回复
热议问题