public static MvcHtmlString ObjectTable(this HtmlHelper helper,
ICollection<Object> objects, ICollection<string> header)
但我没有添加system.object并因添加命名空间而获得错误。 我的问题是:如果.NET驱动的所有内容都是对象,但为什么我应该添加命名空间?
答案 0 :(得分:3)
因为一切都是Object
并不意味着Object
不能在System
名称空间中。它是,它遵循通常的命名空间规则。
(您也可以使用不带object
的小写using System
别名。)
答案 1 :(得分:3)
添加using
指令的目的只是允许您在该命名空间中使用名称而不对其进行完全限定。
所以你没有有来添加using
指令。你可以写:
public static MvcHtmlString ObjectTable(this HtmlHelper helper,
ICollection<System.Object> objects, ICollection<string> header)
或者,由于object
总是 System.Object
的别名,您可以写:
public static MvcHtmlString ObjectTable(this HtmlHelper helper,
ICollection<object> objects, ICollection<string> header)
顺便说一句,not everything derives from object ......
答案 2 :(得分:2)
如你所说,所有内容都是从Object派生的,但System.Object就像你要引用的每个其他类型一样,你要么必须显式引用它(即System.Object),要么为命名空间添加using 。
如果它的行为与其他.Net不一致,可能会引起更多的混淆。