.net 实体框架是否自动更新外键值?

.net 实体框架是否自动更新外键值?,.net,entity-framework,foreign-keys,.net,Entity Framework,Foreign Keys,这是一个非常简单的问题,我还没有找到一个令人满意的答案。我的设置很简单,两个表用外键连接。我能够成功地用EF更新这两个表,但是调用SaveChanges时,父表中的ID值没有填充我是否必须手动将父表中的ID值分配给子表中的相应属性,以获取要在数据库中填充的外键?我必须这样做似乎有些奇怪,因为它似乎应该是自动的,但我对EF是新手。谢谢 是的,它确实保持了这些同步,但有一些限制。您不必手动分配ID 您在问题中没有提供足够的信息来解决您的问题,但有几件事需要检查: 实体是否在同一上下文中 如果您使用

这是一个非常简单的问题,我还没有找到一个令人满意的答案。我的设置很简单,两个表用外键连接。我能够成功地用EF更新这两个表,但是调用SaveChanges时,父表中的ID值没有填充我是否必须手动将父表中的ID值分配给子表中的相应属性,以获取要在数据库中填充的外键?我必须这样做似乎有些奇怪,因为它似乎应该是自动的,但我对EF是新手。谢谢

是的,它确实保持了这些同步,但有一些限制。您不必手动分配ID

您在问题中没有提供足够的信息来解决您的问题,但有几件事需要检查:

  • 实体是否在同一上下文中
  • 如果您使用的是POCOs。你可能已经关机了
  • 尝试一个简单的测试应用程序。也许你的应用程序中有其他代码干扰了这一点

谢谢你的快速回复,克雷格。作为对你说我应该检查的事情的回应:*实体在相同的上下文中*我没有使用POCOs*我将尝试创建一个测试应用程序,但我的设置已经相当简单。我也会检查链接。如果你创建了一个测试应用程序,你可以用你的代码更新你的答案。我能够解决这个问题。周末休息帮我发现了一个简单的错误。@OneSource如果你发布了你的修复,那就太好了@Shumi,我发布这个问题已经有一段时间了,我不记得是怎么解决的。很抱歉仅供参考,由于实体框架的各种问题,我决定选择Dapper作为我的ORM。