Dav*_*dro 187
"普通老C#对象"
只是一个普通的类,没有描述基础结构问题的属性或域对象不应具有的其他责任.
编辑 - 正如其他答案所述,它在技术上是"普通旧CLR对象",但我和David Arno评论一样,更喜欢"普通旧类对象"以避免与特定语言或技术的联系.
要澄清:换句话说,它们不是从某些特殊的基类派生出来的,也不是为它们的属性返回任何特殊类型.
Nic*_*ise 45
大多数人都说过 - 普通的旧CLR对象(与早期的POJO - 普通旧Java对象相对)
POJO来自EJB,它要求您从特定的父类继承诸如值对象之类的东西(从ORM或类似的查询中获得的内容),所以如果你想从EJB迁移(例如到春天),你被塞满了.
POJO只是不强制继承或任何属性标记的类,使它们在你正在使用的任何框架中"工作".
除了在.NET中,POCO是相同的.
通常它会在ORM周围使用 - 较旧(以及一些当前版本)要求您继承特定的基类,这会将您与该产品联系起来.新的不要(nhibernate是我所知道的变种) - 你只是创建一个类,用ORM注册它,然后你就关闭了.更容易.
小智 20
我可能错了.但无论如何,我认为POCO是普通的旧类 CLR对象,它来自POJO普通的旧Java对象.POCO是一个保存数据且没有行为的类.
这是一个用C#编写的示例:
class Fruit
{
public Fruit() { }
public Fruit(string name, double weight, int quantity)
{
Name = name;
Weight = weight;
Quantity = quantity;
}
public string Name { get; set; }
public double Weight { get; set; }
public int Quantity { get; set; }
public override string ToString()
{
return $"{Name.ToUpper()} ({Weight}oz): {Quantity}";
}
}
Run Code Online (Sandbox Code Playgroud)
POCO代表"Plain Old CLR Object".
在Java土地中,通常"PO"表示"普通老".其余的可能很棘手,所以我猜你的例子(在Java的上下文中)是"普通的旧类对象".
其他一些例子