【发布时间】:2013-12-10 10:10:45
【问题描述】:
使用 Visual Studio 2008 并使用 VB.net 为 Web 应用程序生成 .net 2.0 框架。
我目前遇到了一个很奇怪的问题。在我构建解决方案并单击网页中的链接后,我收到如下错误消息。当我尝试在调试模式下运行时发生了同样的事情。
*************************************** ERROR Message ******************************************************
"An exception of type 'System.InvalidCastException' occurred in Microsoft.VisualBasic.dll but was not handled in user code"
"Additional information: Operator '=' is not defined for type 'DBNull' and string "". "
*******************************************************************************************************************
问题部分在vb文件中如下所示。 dataview(0)(“name”) 的值为 NULL,my_name 是一个变量字符串。奇怪的是我没有更改这个 vb 文件中的任何代码。这个vb文件是以前建好的,很久以前用过,没有任何问题。只是今天突然发生了。我在整个程序中都有这种语法而不会引起任何问题。我已尝试将整个解决方案恢复为原始解决方案,但仍然存在问题。
谁能告诉我为什么突然以及如何解决?
If dataview(0)(“name”) = my_name then …
【问题讨论】:
-
因为突然之间,
name列中有 NULL 值。如果以前从未发生过这种情况,那么有人更改了数据库以允许在该列中插入 NULL 值。 (或者该网站从未经过仔细测试) -
感谢您的建议。实际上,名称列很久以前就有 NULL 值,我正在运行 SQL 2000,我已经将表列属性设置为“允许 null”。我需要更改 Visual Studion 2008 中的哪些地方?生无可恋。请帮忙。谢谢。
标签: vb.net visual-studio-2008 web-applications .net-2.0