定义新类或新视图模型类时,List<> 与 IEnumerable<>

Joh*_*ohn 5 c# entity-framework asp.net-mvc-3

我定义了一个新的 ViewModel 类,如下所示:-

public class myviewmodel
{
    public IEnumerable<Question> Questions { get; set; }
    public decimal Total { get; set; }
    public string Message { get; set; }

}
Run Code Online (Sandbox Code Playgroud)

但我也可以将其定义为

public class myviewmodel
{
    public List<Question> Questions { get; set; }
    public decimal Total { get; set; }
    public string Message { get; set; }

}
Run Code Online (Sandbox Code Playgroud)

如果我想创建一个新的模型类,也会发生这种情况;那么这两种方法有什么区别呢?BR

Ale*_*r R 0

IEnumerable更抽象,通常优先于ListorIList如果可能。仅仅因为它是一个接口,并且您有更多的实现可能性。

看到这个问题