这个语句是否构建了一个没有“new”关键字的新对象?

时间:2014-01-10 21:41:30

标签: asp.net asp.net-mvc

我正在回顾一些使用实体框架用C#编写的MVC ASP.NET教程代码。

以下方法声明如下:

    public Product GetProduct(int id)
    {
        Product item = repository.Get(id);
        //method statements
    }

某些背景: “Product”也是一个包含简单{get;set;}属性的POCO类。 上面的代码写在一个名为ProductsController.cs

的控制器文件中

我的问题围绕Product item = repository.Get(id)

如果Product是一个类,那么你不必用“new”关键字实例化“item”吗? 我真的不确定如何解释这个陈述。任何澄清将不胜感激。

2 个答案:

答案 0 :(得分:3)

repository.Get已使用new(或称为某个使用new的函数)来创建它返回给您的对象。您不必这样做(事实上,由于repository.Get不是类型,所以不能这样做。)

答案 1 :(得分:0)

repository.Get(id) 返回 类型为Product的对象,该对象已分配给 对象引用 < / strong> item