Visual Basic (Declaration) | |
---|---|
Public Overloads Function TryAdd( _ ByVal key As TKey, _ ByVal value As TValue _ ) As Boolean |
Parameters
- key
- The object to use as the key of the element to add.
- value
- The object to use as the value of the element to add.
Exception | Description |
---|---|
System.NotSupportedException | The IDictionary is read-only. |
Library/Library.Test/TestSynchronizedCollections.cs
C# | Copy Code |
---|---|
SynchronizedDictionary<int, string> data = new SynchronizedDictionary<int, string>(new Dictionary<int, string>()); Assert.IsTrue(data.TryAdd(1, "a")); Assert.IsFalse(data.TryAdd(1, "a")); Assert.IsTrue(data.TryUpdate(1, "a")); Assert.IsTrue(data.TryUpdate(1, "c")); Assert.IsTrue(data.TryUpdate(1, "d", "c")); Assert.IsFalse(data.TryUpdate(1, "f", "c")); Assert.AreEqual("d", data[1]); Assert.IsTrue(data.TryUpdate(1, "a", data[1])); Assert.AreEqual("a", data[1]); Assert.IsFalse(data.TryUpdate(2, "b")); string val; Assert.IsTrue(data.TryRemove(1, out val) && val == "a"); Assert.IsFalse(data.TryRemove(2, out val)); Assert.AreNotEqual(val, "a"); Assert.IsFalse(data.TryUpdate(1, (k, x) => x.ToUpper())); data[1] = "a"; data[1] = "b"; Assert.IsTrue(data.TryUpdate(1, (k, x) => x.ToUpper())); Assert.AreEqual("B", data[1]); |
VB.NET | Copy Code |
---|---|
Dim data As New SynchronizedDictionary(Of Integer, String)(New Dictionary(Of Integer, String)()) Assert.IsTrue(data.TryAdd(1, "a")) Assert.IsFalse(data.TryAdd(1, "a")) Assert.IsTrue(data.TryUpdate(1, "a")) Assert.IsTrue(data.TryUpdate(1, "c")) Assert.IsTrue(data.TryUpdate(1, "d", "c")) Assert.IsFalse(data.TryUpdate(1, "f", "c")) Assert.AreEqual("d", data(1)) Assert.IsTrue(data.TryUpdate(1, "a", data(1))) Assert.AreEqual("a", data(1)) Assert.IsFalse(data.TryUpdate(2, "b")) Dim val As String Assert.IsTrue(data.TryRemove(1, val) AndAlso val = "a") Assert.IsFalse(data.TryRemove(2, val)) Assert.AreNotEqual(val, "a") Assert.IsFalse(data.TryUpdate(1, Function(k, x) x.ToUpper())) data(1) = "a" data(1) = "b" Assert.IsTrue(data.TryUpdate(1, Function(k, x) x.ToUpper())) Assert.AreEqual("B", data(1)) |
Target Platforms: Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7