问题标签 [invalidoperationexception]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
15250 浏览

wpf - 拖动多个项目时,此视图不允许 DataGrid 'EditItem'

我有一个数据网格,它获取这样的数据:

问题是 - 每当用户尝试编辑一个单元格或拖动多个单元格时 - 应用程序都会引发异常:

System.InvalidOperationException 未处理
消息:此视图不允许“EditItem”。

为什么是这样?是因为输入数据的方式吗?
有任何想法吗?
谢谢!

0 投票
4 回答
2327 浏览

c# - 识别 InvalidOperationException “集合已修改;枚举操作可能无法执行。”

我有一个很好的老InvalidOperationException被抛出标准消息

收藏已修改;枚举操作可能无法执行。

问题是,枚举器没有修改自己,例如:

我的代码是多线程的(这个例子大约有 12-15 个线程),每个线程都应该在自己的路由的深层克隆上工作。显然某处出了点问题,但是,我的问题是如何用这么多线程追踪这个问题?减少数量会显着阻止问题的出现。

在这种情况下,我的路由实例是一个 IList,所以我可以在界面中添加东西。在它下面有它自己的 List 实现。

编辑

补充一下,我可以使用 ToArray() 或 ToList() 这个,也许可以忽略这里的问题,但我真的不想这样做,我想找到原因。例如:

如果我将其更改为以下内容:

然后我在这个断言上失败了,因为在 ToList() 之前发生了一个机会......我需要尝试找出发生变化的地方

0 投票
2 回答
2759 浏览

c# - 在回调中回调时出现 WCF InvalidOperationException

我有这样的服务:

在 NotifyClient() 的实现中,我尝试调用 CallService()。这会导致 InvalidOperationException:

附加信息:此操作将死锁,因为在当前消息完成处理之前无法收到回复。如果要允许无序消息处理,请在 CallbackBehaviorAttribute 上指定 Reentrant 或 Multiple 的 ConcurrencyMode。

我的服务的 ServiceBehavior 设置如下:

我的回调有 CallbackBehavior 为:

什么可能导致此异常?我也尝试过使用 ConcurrencyMode.Reentrant,但这没有帮助。我可以通过在工作线程上调用 CallService() 来解决问题,但我仍然想知道是什么导致了异常。

谢谢。

编辑:添加了 [OperationContract(IsOneWay = true)],但问题仍然存在。

0 投票
0 回答
620 浏览

c# - 当作为 RESTful URI 调用时,带有可选 C# 参数的 webmethod 似乎是必需的 - 给出 InvalidOperationException: Missing parameter

我有一个有效的 webmethod,并且我添加了一些可选参数(因为我不想让所有调用者负担这些值;它们主要是为了满足我的开发需求,因为我的 webmethod 构造了一个诊断 EventLog.WriteEntry):

我也可以使用这样的 RESTful URI 调用上述方法: http://localhost/sdkTrimFileServiceASMX/FileService.asmx/DownloadFileCF?trimURL=60~GROUPER~1137&TrimRecordNumber=5

但后来我明白了:

然而,当我在 localhost 上测试 web 服务的 web 方法并仅提供前 2 个文本框的值并单击 INVOKE 按钮时,参数被视为可选。

我对 REST 规则非常陌生。有人可以解决这个问题吗?

0 投票
2 回答
703 浏览

silverlight - 单击链接时出现 Silverlight InvalidOperationException

我有一个动态生成的超链接,点击它应该会打开一个 Lotus Notes 文档。我使用下面的代码来做。

这是单击链接时触发的代码。

lotus notes 文档正确打开,但我得到一个 System.InvalidOperationException,其详细信息如下

另一个需要注意的有趣的事情是,它是在另一个线程上引发的,因此在触发 hostingWindow.Navigate 方法时不会被捕获。

有任何想法吗 ?

0 投票
2 回答
1103 浏览

c# - Linq orderby 子句中发生 InvalidOperationException

这是我正在使用的 linq 语句:

OriginalList 是一个包含超过 10,000 个元素的 Transaction 对象列表。NValue 是 Transaction 的可为空属性。每次 OriginalList 更新时,都会执行该语句。

我发现有时,此语句可能会引发以下异常: System.InvalidOperationException: Nullable object must have a value。

我尝试进行单元测试,并用一个只有一个事务的 OriginalList 来提供它。此交易的 NValue 为空。它不会触发此异常。

任何人都知道这里发生了什么?非常感谢。

我们正在使用 Linq to SQL。这是堆栈跟踪:

2011-10-05 16:14:06,826 [SRV101 DC\Admin] [59] 错误 Utils.AProxy`1 - AProxy [TProxy] 加载期间出错

0 投票
1 回答
103 浏览

c# - 如何防止 InvalidOperationException 保存实体的循环图?

鉴于实体,

其中A.DefaultBA.DefaultC是可选的,

context.Set<T>().Add(...)什么组合context.SaveChanges()可以保存以下对象图?

就像现在一样,我得到了一个InvalidOperationException(迭代时的集合修改),因为 EF似乎不能很好地处理循环

0 投票
2 回答
3835 浏览

c# - “InvalidOperationException:对象当前正在其他地方使用”在无害的 onpaint 期间?

出于某种原因,我们收到“InvalidOperationException:对象当前正在其他地方使用”。

在我们的自定义 OnPaint 期间,如下(实际上几乎是一行代码的行副本......那里只有这么少)。

我们在下面的异常处理程序中登录,以检测我们是否以某种方式从非 UI 线程调用 OnPaint ......并且没有被触发,但我们正在记录该错误(参见下面的堆栈跟踪)。

在我们遇到这些错误的机器上,我们还看到了来自其他控件的可怕的红色 X(可能在他们的 OnPaints 周围没有尝试/捕捉)。

它们可能是相关的,但是如果仅从 UI 线程调用此代码,我无法弄清楚可能导致该错误的原因。

有任何想法吗?

这是堆栈跟踪:

System.InvalidOperationException:对象当前正在其他地方使用。
在 System.Drawing.Graphics.CheckErrorStatus(Int32 状态)
在 System.Drawing.Graphics.DrawRectangle(Pen pen, Int32 x, Int32 y, Int32 width, Int32 height)
在 System.Windows.Forms.ControlPaint.DrawBorderSimple(图形图形,
System.Windows.Forms.ControlPaint.DrawBorder(Graphics graphics, Rectangle bounds, Color color, ButtonBorderStyle style) at
MyUserControl.OnPaint(PaintEventArgs e) 的矩形边界、颜色颜色、ButtonBorderStyle 样式

这是课程:

0 投票
2 回答
6386 浏览

c# - System.InvalidOperationException 由于调用 Application.Exit() 时的集合修改

我遇到了这个非常非常奇怪的错误,我一直无法确定(这种情况很少发生)。基本上,我有一个 C# 应用程序在退出时随机抛出一个未知异常。这次我设法在调试器中捕获了它,结果发现调用Application.Exit()抛出了System.InvalidOperationException以下消息:

mscorlib.dll 中出现了“System.InvalidOperationException”类型的第一次机会异常

附加信息:集合已修改;枚举操作可能无法执行。

我不确定这个据称被修改的集合是什么,或者是谁修改了它

堆栈跟踪不是很有帮助:

mscorlib.dll!System.Collections.ArrayList.ArrayListEnumeratorSimple.MoveNext() + 0x13f 字节 System.Windows.Forms.dll!System.Windows.Forms.Application.ExitInternal() + 0x112 字节 System.Windows.Forms.dll!System。 Windows.Forms.Application.Exit(System.ComponentModel.CancelEventArgs e) + 0x65 字节

知道如何找出已修改的 ArrayList 吗?我不认为这是我正在做的任何事情,更可能是我正在做的一个动作,即在 MS 没想到的操作中间修改 .NET 框架的底层状态。

0 投票
3 回答
1383 浏览

.net - 一个实体对象不能被多个 IEntityChangeTracker 实例引用

我有一个名为 Message 的模型。在模型中有另一个模型的ICollection ResourceSubscribers 称为Resource。当我尝试

“Context.Messages.Add(model);” 行抛出 InvalidOperationException 并显示消息“IEntityChangeTracker 的多个实例无法引用实体对象。”。