困惑,这是poco吗?

时间:2012-11-11 13:47:59

标签: c# poco

假设我想实现以下界面:

public interface ICar
{
   bool IsMoving();
   bool IsRegistered();
   int CurrentSpeed {get; set;}
} 

   public class Car : ICar
   {
       public int CurrentSpeed {get; set;}        
       public bool IsMoving()
       {
         // some logic here
       }
   }

这个IsMoving()方法会破坏poco定义吗?

2 个答案:

答案 0 :(得分:3)

POCO是框架设计的一个特征,这意味着使用框架的(某些)代码不必适应它。最值得注意的是,在ORM框架中,它意味着实体类不必实现IEntity以允许持久存储在数据库中。

这意味着在您自己的代码中,您不需要关心什么是“POCO”而不是“POCO”。但是,如果您需要其他人使用您的代码来实施ICar,那么您不允许他们使用POCO。

答案 1 :(得分:0)

检查此链接DTO ver POCO

POCO vs DTO

引用(但阅读链接并按照其他链接)

  

...... POCO遵循OOP规则。它应该(但不是必须)   有状态和行为。 POCO来自POJO,由Martin创造   福勒...

换句话说,如果POCO有行为,那就绝对没问题。 POCO的The requirement 不知道持久性