【发布时间】:2018-04-06 13:10:33
【问题描述】:
当我添加 Microsoft Excel 对象库(参考 Microsoft.Office.Interop.Excel)时,放置在 c# 代码中的断点停止工作。而且我必须使用 MessageBox.Show() 进行调试。这是使断点工作的解决方案吗?
如何重现:
- 创建一个新的 SSIS 包。
- 添加脚本任务。
-
用一些简单的代码编辑脚本任务,例如:
// TODO:在此处添加您的代码
string test = "test"; MessageBox.Show("test " + test); Dts.TaskResult = (int)ScriptResults.Success; 在 MessageBox 行上放置一个断点,然后启动调试 (F5)。断点有效!
- 再次编辑脚本任务,添加对 Microsoft Excel 对象库 16.0(COM 对象部分)的引用。
- 再次尝试调试。断点不起作用!
- 你明白了。
我在 32 位 Windows 7 上使用 DataTools (Visual Studio 2015),目标框架是 .NET Framework 4.5。
【问题讨论】:
-
如果您能提供minimal reproducible example,那就太好了。如果删除引用,问题会停止吗?
-
Is it a solution?当然,使用MessageBox.Show()是一种解决方案,但不是最好的解决方案。您也可以登录到文件。如果没有一些示例代码来演示您在做什么,我们无能为力。 -
断点不再起作用的原因有很多,但如果不了解具体情况,几乎不可能说出原因。
-
@DanWilson 唯一的原因是添加了 Interop Excel。没有其他任何改变
-
请提供一些代码,包括您试图中断的行。提供您正在使用的 Excel 互操作版本。提供您的项目框架版本。我们需要详细信息。
标签: c# ssis excel-interop