我对一些事情表示怀疑......
由于我是全新的(MVC年龄不到15天)这个ASP.net MVC概念,并且由于对MVC中一些基本概念的了解,所以真的放弃了我的工作......所以,
任何人都可以清楚而简单地向我解释类似的事情,
1.我们何时应该使用“IEnumerable”,“List”....
2.使用
这样的语句背后的主要用途是什么?@model IEnumerable
3.
的主要用途是什么?public Virtual Classname Identifier {get;设置;}
4.
的主要用途是什么?public IEnumerable Identifier {get; set;}
5.主要用途是什么? 公共列表标识符{get; set;}
我会非常感谢你......
提前致谢...
答案 0 :(得分:2)
除了2.)之外的所有问题都与ASP.NET MVC完全无关。这些是关于数据结构和OOP的基本.NET / C#问题,在进入ASP.NET MVC之前应该学习这些问题。
1)我们什么时候应该使用“IEnumerable”,“List”....
IEnumerable<T>
是集合层次结构中的最高接口。它不允许直接访问集合的每个元素。当消费者只需要遍历此集合的元素时,通常会使用它。当您需要为可变长度集合建模时,可以使用List<T>
,允许您向其添加和删除元素,并使用索引直接访问元素。
2)使用
之类的语句背后的主要用途是什么
@model IEnumerable<Namespace.Models.ModelClasses>
此语句用于指示给定Razor视图中模型的类型。在这种情况下,它表示视图强类型为IEnumerable<Namespace.Models.ModelClasses>
接口,这意味着呈现此视图的相应控制器操作需要将此类型的实例传递给视图。
3)
的主要用途是什么?public Virtual Classname Identifier {get;设置;}
无。这不是有效的C#,也不会编译。另一方面,如果您的意思如下:
public virtual Classname Identifier { get; set; }
那么这意味着你已经将Identifier属性声明为虚拟意味着它可以在派生类中被覆盖。与Java相反,在.NET中,成员默认是密封的,除非您将它们标记为virtual
。
4)
的主要用途是什么
public IEnumerable<ClasseName> Identifier{get;set;}
它声明类型Identifier
的{{1}}属性,它是一个接口。
5)
的主要用途是什么?
IEnumerable<ClasseName>
它声明了特定public List<ClasseName> Identifier{get;set;}
类型的Identifier
属性。