在今天早些时候锁定 Visual Studio 2010 后,包含嵌套 With 语句的代码段不再工作,并锁定,我必须使用任务管理器来终止 VS-2010。
我有一段代码如下:
With cmd ' OleDbCommand object
With .Parameters '<------- locks up when executing this line
.AddWithValue("@Parm1", Parm1Value)
.AddWithValue("@Parm2", Parm2Value)
' Etc.
End With
.ExecuteNonQuery()
End With
这运行良好,直到 VS 更早锁定。我必须从目录中删除 SUO 文件,以便 VS 在尝试打开我之前打开的文档时不会抱怨。但随后这个嵌套的 With 语句停止工作。
但是,以下两种代码变体可以正常工作:
With cmd
With cmd.Parameters '<--- with cmd explicitly specified
.AddWithValue("@Parm1", Parm1Value)
.AddWithValue("@Parm2", Parm2Value)
' Etc.
End With
.ExecuteNonQuery()
End With
和
cmd.Parameters.AddWithValue("@Parm1", Parm1Value)
cmd.Parameters.AddWithValue("@Parm2", Parm2Value)
cmd.ExecuteNonQuery()
任何利用外部 With 语句的嵌套 With 语句都会以同样的方式失败(即不必与 OleDb 对象结合使用)对象...相同的结果:它被锁定了。
我运行了 VS-2010 安装来进行修复,它仍然以这种方式运行。重新启动也不能解决问题。
我可以用不同的方式编写代码,但我不应该这样做,其次,谁知道当 VS 第一次崩溃时还有什么问题?!
我希望不必完全卸载/重新安装 VS-2010。
有没有其他人看到这个问题?