C# 尝试在ASP.NET中使用图像处理程序时出错
我从指南中获取了以下代码以对其进行测试,但遇到一个错误,即对象引用未设置为对象的实例 请注意,这不是我的代码,因此这个问题与解密有关 错误发生在以下行中: int byteSeq=strm.Readbuffer,0,4096C# 尝试在ASP.NET中使用图像处理程序时出错,c#,asp.net,blob,httphandler,C#,Asp.net,Blob,Httphandler,我从指南中获取了以下代码以对其进行测试,但遇到一个错误,即对象引用未设置为对象的实例 请注意,这不是我的代码,因此这个问题与解密有关 错误发生在以下行中: int byteSeq=strm.Readbuffer,0,4096 有人知道问题出在哪里吗?行本身上唯一的成员访问权限是在strm上,所以我假设它是一个空引用 检查GetFromDB为特定查询返回的内容。如果找不到id,我假设它将返回null Stream strm = GetFromDB(id); 要解决此问题,请执行以下任一操作: 更
有人知道问题出在哪里吗?行本身上唯一的成员访问权限是在strm上,所以我假设它是一个空引用 检查GetFromDB为特定查询返回的内容。如果找不到id,我假设它将返回null
Stream strm = GetFromDB(id);
要解决此问题,请执行以下任一操作:
更新GetFromDB以不返回空值
检查传入的id以确保其有效
使用前请检查strm是否不为null
这可能是因为GetFromDB返回null。在GetFromDB中捕获异常时不应返回null,如果返回,则应测试返回值是否为null。尽量不要捕捉异常,这将向您显示问题所在。很明显,此行返回null:
Stream strm = GetFromDB(id);
检查该方法是否包含正确的实现,以及所提供的id是否存在。顺便说一句,当抛出异常时,GetFromDB方法返回null…因此,我建议仔细检查一下,找出原因。如果将对象img=cmd.ExecuteScalar;在try块中,您可以修改catch以捕获实际的异常对象,而不只是返回null。谢谢!这确实是问题所在
Stream strm = GetFromDB(id);