Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# MissingMethodException:找不到方法_C#_.net_Vb.net_Indexer - Fatal编程技术网

C# MissingMethodException:找不到方法

C# MissingMethodException:找不到方法,c#,.net,vb.net,indexer,C#,.net,Vb.net,Indexer,只是不明白我为什么会犯这个错误。我有代码,正在尝试实现索引器: public class BOCollection<TKey, TValue> { IDictionary<TKey, TValue> _privateDictionary = new Dictionary<TKey, TValue>(); public TValue this[TKey key] { get{return _privateDictionary

只是不明白我为什么会犯这个错误。我有代码,正在尝试实现索引器:

public class BOCollection<TKey, TValue>
{
    IDictionary<TKey, TValue> _privateDictionary = new Dictionary<TKey, TValue>();
    public TValue this[TKey key]
   {
        get{return _privateDictionary[key];}
        set{_privateDictionary[key] = value;}
    }

//Dictionary Methods
//Other methods
}
公共类BOCollection
{
IDictionary_privateDictionary=新字典();
公共TValue此[TKey]
{
获取{return _privateDictionary[key];}
设置{u privateDictionary[key]=value;}
}
//字典方法
//其他方法
}
没有编译时错误,但获取运行时错误:

找不到方法:“System.Collections.Generic.Dictionary`2 NGC.BO.Base.BOBaseClass.get_Child()”


您的索引器很好。您的集合中似乎有一些对象缺少所需的
子属性实现

所以另一个解决方案可能是,因为我经历了这一点。 我有一个项目取决于其他几个项目。主项目还参考了其他项目中的一个,但它没有使用它

因此,当我删除主对象中的引用时,问题就消失了。 我有一种感觉,原因是主对象是最后生成的,因此它用自己的otherproject.dll覆盖了新生成的otherproject.dll。。。因为它没有被使用

因此,我的建议是:
仔细检查你的参考资料,并检查它是否正在项目中使用。如果不是,请将其全部删除

这通常是一个部署问题。检查bin目录中是否有更多版本的程序集,更好的是,清除bin目录并从fresh部署。例如,如果您最近重命名了程序集,则会发生这种情况。我尝试了您的建议,但运行时错误仍然存在……您发布的代码似乎与您给出的错误/堆栈跟踪无关。本周我也遇到了这种情况。我已完成以下操作:关闭Visual Studio删除应用程序的bin目录删除应用程序的obj目录删除C:\Windows\Microsoft.Net\Framework64\v4.0.30319\下的应用程序的临时ASP.Net文件(如果在32位环境中运行,请更改框架)之后我仍然有问题。然后我删除了c:\user\{yourusername}\AppData\Local\Microsoft\VisualStudio\12.0下的ComponentModelCache,然后我可以在本地运行,现在部署远程。希望这有帮助。