什么是不在Silverlight中使用ArrayList的理由?

Lou*_*hys 4 .net c# collections silverlight arraylist

我在源代码中遇到过这段代码

#if SILVERLIGHT
        internal static System.Collections.IList CreateArrayList()
        {
            return new List<object>();
        }

#else
        internal static System.Collections.IList CreateArrayList()
        {
            return new ArrayList();
        }

#endif
Run Code Online (Sandbox Code Playgroud)

这种不同治疗的目的可能是什么?

Eri*_*ert 10

Silverlight没有已弃用的非泛型集合类; 他们不仅灰心丧气; 他们根本不在那里.

这段代码的奇怪之处在于:显然它适用于SilverLight案例,那么为什么要保留旧代码呢?使用ArrayList没有令人信服的好处,有吗?

  • 当然,除非你也在构建.NET 1.1或微框架. (3认同)
  • @JonSkeet:好点.但这似乎也很奇怪; 如果是这样的话为什么特殊情况SilverLight呢?为什么不是代码"#if DOTNET_V1_1",所以只有在**使用*时才使用ArrayList? (3认同)