在我看来
,几乎默认情况下,所有代码优先的 POCO 都应该为其主键(即自动生成的 Id)提供私有资源库。
喜欢这个- public int id { get; private set; }
这是一个不正确的假设吗?我不希望我的 API 允许设置自动生成的列。
公开公共资源库应该不是问题,因为甚至不建议在数据访问对象层之外公开此 POCO。
公开使用特定框架属性修饰的 POCO,甚至是披露有关存储的某种信息的 POCO(在本例中为实体关系数据库)是一种不好的做法。
请考虑将其包装在接口中,并将其作为该接口的实例返回。通过这种方式,您可以享受两全其美的体验。公开必要的属性并仅允许设置其中的一部分。
无论如何,我不认为EF会太喜欢私人二传手的东西。