本文整理汇总了C#中Locator.Add方法的典型用法代码示例。如果您正苦于以下问题:C# Locator.Add方法的具体用法?C# Locator.Add怎么用?C# Locator.Add使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Locator
的用法示例。
在下文中一共展示了Locator.Add方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: AddingToSameKeyTwiceThrows
public void AddingToSameKeyTwiceThrows()
{
object o = new object();
IReadWriteLocator locator = new Locator();
locator.Add("foo1", o);
locator.Add("foo1", o);
}
示例2: ReadOnlyLocatorCountReflectsInnerLocatorCount
public void ReadOnlyLocatorCountReflectsInnerLocatorCount()
{
Locator innerLocator = new Locator();
ReadOnlyLocator locator = new ReadOnlyLocator(innerLocator);
innerLocator.Add(1, 1);
innerLocator.Add(2, 2);
Assert.AreEqual(innerLocator.Count, locator.Count);
}
示例3: ItemsContainedInLocatorContainedInReadOnlyLocator
public void ItemsContainedInLocatorContainedInReadOnlyLocator()
{
Locator innerLocator = new Locator();
ReadOnlyLocator locator = new ReadOnlyLocator(innerLocator);
innerLocator.Add(1, 1);
innerLocator.Add(2, 2);
Assert.IsTrue(locator.Contains(1));
Assert.IsTrue(locator.Contains(2));
Assert.IsFalse(locator.Contains(3));
}
示例4: GenericGetEnforcesDataType
public void GenericGetEnforcesDataType()
{
Locator innerLocator = new Locator();
ReadOnlyLocator locator = new ReadOnlyLocator(innerLocator);
innerLocator.Add(1, 2);
locator.Get<string>(1);
}
示例5: CanEnumerateItemsInReadOnlyLocator
public void CanEnumerateItemsInReadOnlyLocator()
{
Locator innerLocator = new Locator();
ReadOnlyLocator locator = new ReadOnlyLocator(innerLocator);
innerLocator.Add(1, 1);
innerLocator.Add(2, 2);
bool sawOne = false;
bool sawTwo = false;
foreach (KeyValuePair<object, object> pair in locator)
{
if (pair.Key.Equals(1))
sawOne = true;
if (pair.Key.Equals(2))
sawTwo = true;
}
Assert.IsTrue(sawOne);
Assert.IsTrue(sawTwo);
}
示例6: AskingParentStopsAsSoonAsWeFindAMatch
public void AskingParentStopsAsSoonAsWeFindAMatch()
{
object o1 = new object();
object o2 = new object();
IReadWriteLocator rootLocator = new Locator();
IReadWriteLocator childLocator = new Locator(rootLocator);
IReadWriteLocator grandchildLocator = new Locator(childLocator);
rootLocator.Add("foo", o1);
childLocator.Add("foo", o2);
object result = grandchildLocator.Get("foo", SearchMode.Up);
Assert.IsNotNull(result);
Assert.AreSame(o2, result);
}
示例7: RetrievingARemovedObjectReturnsNull
public void RetrievingARemovedObjectReturnsNull()
{
object o = new object();
IReadWriteLocator locator = new Locator();
locator.Add("Foo", o);
locator.Remove("Foo");
Assert.IsNull(locator.Get("Foo"));
}
示例8: RemovingOneObjectDoesntAffectOtherObjects
public void RemovingOneObjectDoesntAffectOtherObjects()
{
object o1 = new object();
object o2 = new object();
IReadWriteLocator locator = new Locator();
locator.Add("foo1", o1);
locator.Add("foo2", o2);
Assert.IsTrue(locator.Remove("foo1"));
Assert.AreSame(o2, locator.Get("foo2"));
}
示例9: RegistrationDoesNotPreventGarbageCollection
public void RegistrationDoesNotPreventGarbageCollection()
{
IReadWriteLocator locator = new Locator();
locator.Add("foo", new object());
GC.Collect();
Assert.IsNull(locator.Get("foo"));
}
示例10: RegisteringAnObjectWithTwoKeysAndRemovingOneKeyLeavesTheOtherOneInTheLocator
public void RegisteringAnObjectWithTwoKeysAndRemovingOneKeyLeavesTheOtherOneInTheLocator()
{
object o = new object();
IReadWriteLocator locator = new Locator();
locator.Add("foo1", o);
locator.Add("foo2", o);
locator.Remove("foo1");
Assert.AreSame(o, locator.Get("foo2"));
}
示例11: CountReturnsNumberOfKeysWithLiveValues
public void CountReturnsNumberOfKeysWithLiveValues()
{
object o = new object();
IReadWriteLocator locator = new Locator();
locator.Add("foo1", o);
locator.Add("foo2", o);
Assert.AreEqual(2, locator.Count);
o = null;
GC.Collect();
Assert.AreEqual(0, locator.Count);
}
示例12: CanRegisterObjectByStringKey
public void CanRegisterObjectByStringKey()
{
object o = new object();
IReadWriteLocator locator = new Locator();
locator.Add("Bar", o);
Assert.IsNotNull(locator.Get("Bar"));
Assert.AreSame(o, locator.Get("Bar"));
}
示例13: GenericGetWithSearchModeEnforcesDataType
public void GenericGetWithSearchModeEnforcesDataType()
{
Locator innerLocator = new Locator();
ReadOnlyLocator locator = new ReadOnlyLocator(innerLocator);
innerLocator.Add(1, 2);
locator.Get<string>(1, SearchMode.Local);
}
示例14: GetCanAskParentLocatorForAnObject
public void GetCanAskParentLocatorForAnObject()
{
object o = new object();
IReadWriteLocator rootLocator = new Locator();
IReadWriteLocator childLocator = new Locator(rootLocator);
rootLocator.Add("Foo", o);
object result = childLocator.Get("Foo", SearchMode.Up);
Assert.IsNotNull(result);
Assert.AreSame(o, result);
}
示例15: FindingByPredicateReturnsClosestResultsOnDuplicateKey
public void FindingByPredicateReturnsClosestResultsOnDuplicateKey()
{
object o1 = new object();
object o2 = new object();
IReadWriteLocator rootLocator = new Locator();
IReadWriteLocator childLocator = new Locator(rootLocator);
rootLocator.Add("foo", o1);
childLocator.Add("foo", o2);
IReadableLocator results;
results = childLocator.FindBy(
SearchMode.Up,
delegate(KeyValuePair<object, object> kvp)
{
return true;
});
Assert.AreEqual(1, results.Count);
Assert.AreSame(o2, results.Get("foo"));
}