代码之家  ›  专栏  ›  技术社区  ›  Shady M. Najib

NET中的香草类对象是什么?

  •  6
  • Shady M. Najib  · 技术社区  · 14 年前

    我在看书 this article from MSDN on Dependency Injection 我在文章中看到一个我不太明白的词,引用:

    在应用程序开发中使用容器有几个原因。容器提供了 包裹香草类物品 有很多其他的服务。这允许对象对某些基础结构和管道细节保持无知,如事务性和基于角色的安全性。通常,客户机代码不需要知道容器,因此不需要真正依赖容器本身。

    或者基于.NET的属性 .

    我知道“香草”通常指的是一些简单的东西,但我不完全理解这里的意思。

    香草在.NET中指什么?

    2 回复  |  直到 14 年前
        1
  •  11
  •   Jon Skeet    14 年前

    一些上下文可以使问题更清楚,但通常它用来表示一个普通的对象(或类型),没有“特殊的权力”。例如,如果序列化方案声称可以与“vanilla objects”一起工作,那么您不应该为了序列化它而需要用额外的属性等来修饰它。同样,如果ORM使用普通类型,则不需要实现特定的接口或类似的东西。

    编辑:好的,看了上下文,上面的内容似乎是对的。

    另一种思考方法是,您可以编写一个类型,然后可以由框架使用 不让类型知道框架 . 所以 DI框架要求您修饰类型本身以允许注入,而其他框架则不需要。后者框架能够处理“普通”类型。

        2
  •  1
  •   6502    14 年前

    真的不知道。。。但从这个意义上说,我猜它可能是一个类的实例,这个类只有一个构造函数,在这里您可以读/写成员,而不需要其他方法。

    struct P2d
    {
        double x, y;
        P2d(double x, double y) : x(x), y(y) {}
    };