我在生产中遇到以下错误(仅限),我无法弄清楚原因,如果有人可以帮我解决这个问题会很棒。
Exception HttpUnhandledException:ErrorCode:-2147467259消息: 抛出了类型'System.Web.HttpUnhandledException'的异常。 数据:System.Collections.ListDictionaryInternal InnerException: System.InvalidOperationException:集合已被修改;列举 操作可能无法执行。在 MyToolbarEx.RaiseEvent(字符串 eventArgument,Boolean isCallBack)in C:\ BA \ 2 \ 547 \源头\ MyToolbarEx.cs:线 281在System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl,String eventArgument)
这是我的代码(在myclass.cs中)
private void RaiseEvent(string eventArgument, bool isCallBack)
{
LoadCommandState(); //this is the line '281' which casues the issue
//rest of the code
}
这是方法'LoadCommandState'
private void LoadCommandState()
{
lock (Commands) //Marks this block as a critical section
{
//Commands is a custom collection & ToArray() call is to create a copy of it to avoid the above said issue, but nothing worked
foreach (ToolbarExCommand command in Commands.ToArray())
{
if (command.HasState && toolbarState.ContainsKey(command.StateKey))
{
LoadCommandState(command, toolbarState[command.StateKey]);
}
}
}
}
如果您需要任何其他详细信息,请与我们联系。