早上好, 我已经完成了一个应用程序,它工作正常,直到我向其中一个表添加一个新字段。 我需要在数据库上保存文件,因为他们不想拥有保存文件的位置,而且他们还需要创建一个备份系统,以便在上传文件后保存这些文件。
我将文件保存在数据库上, 在SQL上我的数据类型为VarBinary
ADODB中检索信息的功能很好,但是当我添加行来获取文件内容时,即时调试,每当应用程序到达该行代码时,执行就会停止。 WEIRD对我来说,没有错误没有事件查看器错误,没有编译错误就停止。
if (sqlDataReader["filetable"] != null && sqlDataReader["filetable"].ToString().Length > 0)
{
item.FileTable = Encoding.ASCII.GetBytes(sqlDataReader["filetable"].ToString());
}
这是停止执行的代码行
当调试器在if中时,它只是停止调试应用程序。
有任何想法,我将不胜感激。 这让我发疯了。
谢谢你们。
答案 0 :(得分:1)
不要忘记检查以确保该字段不是DBNull。检查null与数据库中的null不同是一回事。
sqlDataReader["filetable"] != DBNull.value
https://msdn.microsoft.com/en-us/library/system.dbnull.value(v=vs.110).aspx