我试图先理解实体框架代码。
不使用fluent api而只使用dataannotation,是否可以配置多对多关系?
例如,在this tutorial中,我不理解这两个例子是相同的,而是以不同的方式进行的,或者它们必须共存。
如果他们对同一件事有不同的处理方式,那到底有什么不同呢?
如果它们必须共存,API“部件”在做什么?

最佳答案

你说得对。
本段:
使用DataAnnotation配置多对多关系:
学生类应有课程的集合导航属性,课程应有学生的集合导航属性。
是错误的。因为中示例代码中的多对多关系是在向每个类中添加集合时按约定自动创建的。唯一使用的数据注释是Required属性,该属性不包含在多对多关系中。
顺便说一句,“使用fluent api配置多对多关系”这一节是正确的,但是在他们的示例代码中,他们使用它只将自定义名称放在联接表中的外键上,而不是让代码首先生成它。foring键重命名也可以通过使用ForeignKey属性使用数据注释来完成。

关于c# - 没有流利的API的C#多对多关系代码,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33903914/

10-13 04:09