Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/292.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 困惑,这是poco吗?_C#_Poco - Fatal编程技术网

C# 困惑,这是poco吗?

C# 困惑,这是poco吗?,c#,poco,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() { //

假设我要实现以下接口:

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定义?

poco是框架设计的一个特点,这意味着(某些)使用框架的代码不必进行调整。最值得注意的是,在ORM框架中,这意味着实体类不必实现
IEntity
,就可以在数据库中持久化


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

请检查此链接以验证POCO

引用(但请阅读链接并点击其他链接)

…POCO遵循OOP规则。它应该(但不是必须) 有状态和行为。POCO来自马丁创造的POJO 福勒


换句话说,如果POCO有行为,这是绝对可以的<代码>对POCO的要求
不知道持久性的

检查它是否有帮助。该术语与持久性无关。一般来说,它的意思是“不知道有框架向它提供服务”。这些服务可以是对象状态的持久性,或者将其方法公开为web服务,或者注入依赖项。如果您的框架对客户端对象有任何要求,那么这些对象不是POCO。