我有这个结构包含在一个
public class Class1<TKey1> : IDictionary<TKey1, Class2>
{
#region Private Fields
private Dictionary<Key, Class2> _class2Manager = new Dictionary<Key, Class2>(new KeyEqualityComparer());
#endregion
#region Key
protected internal struct Key
{
private TKey1 _TKeyValue1;
public TKey1 TKeyValue
{
get { return _TKeyValue1; }
set { _TKeyValue1 = value; }
}
public Key(TKey1 keyValue)
{
_TKeyValue1 = keyValue;
}
///Other Key Code
}
#endregion
///Other Class1 Code
}
我正在尝试模拟(实现)我的_class2Manager
字典的字典功能class1
。当我想实现该GetEnumerator()
方法时,问题就出现了。我不确定如何将IEnumerator<KeyValuePair<Key, Class2>>
返回的对象转换_class2Manager.GetEnumerator()
为IEnumerator<KeyValuePair<TKey1, Class2>>
IEnumerator<KeyValuePair<TKey1, Class2>> IEnumerable<KeyValuePair<TKey1, Class2>>.GetEnumerator()
{
IEnumerator<KeyValuePair<Key, Class2>> K = _class2Manager.GetEnumerator();
}
我如何转换IEnumerator<KeyValuePair<Key, Class2>>
为IEnumerator<KeyValuePair<TKey1, Class2>>
?
我已经考虑过cast,但我认为这不是我需要做的正确转换它的确切事情。
任何建议表示赞赏,谢谢。