集合中的重复键处理

Sha*_*500 1 .net c# vb.net asp.net collections

我有一个microsoft visual basic集合(在命名空间中Microsoft.VisualBasic) - 它使用Microsoft.VisualBasic.Dll库.

private Collection myCollection;
Run Code Online (Sandbox Code Playgroud)

当我向其添加值时,我收到以下错误:

添加失败,无法插入重复的密钥

我该怎么处理?我需要传递所有ID.例如,如果有ID的集合(例如10,11,12,13,10),如果代码10重复,则该行失败:

myCollection.Add(myIDs.ID);  // this code throws exception
Run Code Online (Sandbox Code Playgroud)

TyC*_*obb 7

http://msdn.microsoft.com/en-us/library/microsoft.visualbasic.collection.aspx

在添加之前,请检查集合是否已包含密钥.

if(!myCollection.Contains(myIDs.ID))
    myCollection.Add(myIDs.ID);
Run Code Online (Sandbox Code Playgroud)

  • 除了TyCobb的回答之外,您可能还需要考虑http://msdn.microsoft.com/en-us/library/microsoft.visualbasic.collection.aspx备注部分中的注释:"只要有可能,您应该使用System.Collections.Generic命名空间中的泛型集合或System.Collections.Concurrent命名空间,而不是Visual Basic集合." (4认同)