相关疑难解决方法(0)

为什么IList <T>没有排序?!?!(编辑)的

当我发现没有直接的方法对IList <T>进行排序或执行二进制搜索时,我感到非常惊讶.就像有一些静态方法来对数组进行排序和执行二进制搜索一样,我认为使用类似于IList <T>的静态方法会非常有用.

目前:

class Array
{
    static Sort<T>(T[] array);
    static int BinarySearch<T>(T[] array, T item);
}
Run Code Online (Sandbox Code Playgroud)

我希望他们会补充:

class List
{
    static Sort<T>(IList<T> list);
    static int BinarySearch<T>(IList<T> list, T item);
}
Run Code Online (Sandbox Code Playgroud)

我瞥了一眼.NET Framework 4.0 Beta SDK,但似乎仍然没有解决这个问题的方法.

我知道我可以通过创建一个扩展方法来解决这个问题,该方法检查它是否是List <T>然后使用List <T>实例进行排序/搜索; 但是,如果它不是List <T>的实例,那么我必须执行一个副本(对于非常大的列表很臭).我知道我可以做到这一切,但为什么呢?他们故意遗漏这个功能有什么理由吗?

为了尝试在.NET 4.0 Framework中实现这一点,我通过Microsoft的Connect程序创建了一个建议.如果你像我这样对这个问题感到沮丧,那就投票吧,也许它会被添加.

https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=474201

.net c# c#-4.0

10
推荐指数
2
解决办法
6759
查看次数

如何对IList <Class>进行排序?

没有任何Sort()功能IList.someoene可以帮我这个吗?我想对自己的IList进行排序.

假设这是我的IList:

public class MyObject() 
{
 public int number { get; set; }
 public string marker { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

如何使用标记字符串对myobj进行排序?

public void SortObject()
{
 IList<MyObject> myobj = new List<MyObject>();
}
Run Code Online (Sandbox Code Playgroud)

c# linq ilist winforms

9
推荐指数
2
解决办法
1万
查看次数

用代理C#替换Func

我们正在尝试将.NET 3.5内置的应用程序移动到2.0(因为我们的exe运行在XP等没有3.5的旧机器上)

在这样做的同时,现在一切都停留在一个主要问题上用旧式代理替换Func(因为Func在2.0上不可用).要替换的代码是这样的.

private Func<object, string> someName1;
private static Func<object, string> someName2;

internal Func<object, string> someProperty
{
      get { return someName1?? (someName1= someName2); }
      set { someName1= value; }
}
Run Code Online (Sandbox Code Playgroud)

有些人可以帮助我创建'someProperty',只需使用代表.提前致谢.

.net c# .net-3.5 .net-2.0

3
推荐指数
1
解决办法
3147
查看次数

标签 统计

c# ×3

.net ×2

.net-2.0 ×1

.net-3.5 ×1

c#-4.0 ×1

ilist ×1

linq ×1

winforms ×1