Discuz!NT官方社区

首页 » Discuz!NT开发与测试 » Discuz!NT插件开发 » 对象不能从 DBNull 转换为其他类型。
hujunmin - 2008-6-3 11:51:00
我在
http://localhost:8011/usercpspacemanagephoto.aspx?albumid=1
页面操作  将图片设置为封面的时候出现错误

对象不能从 DBNull 转换为其他类型。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.InvalidCastException: 对象不能从 DBNull 转换为其他类型。

源错误:


行 686:            photoinfo.Userid = Convert.ToInt32(reader["userid"].ToString());
行 687:            photoinfo.Title = reader["title"].ToString();
行 688:            photoinfo.Views = Convert.ToInt32(reader["views"]);
行 689:            photoinfo.Commentstatus = (PhotoStatus)Utils.StrToInt(reader["commentstatus"], 0);
行 690:            photoinfo.Tagstatus = (PhotoStatus)Utils.StrToInt(reader["tagstatus"], 0);


源文件: G:\webroot\Source Code\Discuz.Space\Provider\BlogProvider.cs    行: 688

堆栈跟踪:


[InvalidCastException: 对象不能从 DBNull 转换为其他类型。]
  System.DBNull.System.IConvertible.ToInt32(IFormatProvider provider) +48
  System.Convert.ToInt32(Object value) +36
  Discuz.Space.Provider.BlogProvider.GetPhotoEntity(IDataReader reader) in G:\webroot\Source Code\Discuz.Space\Provider\BlogProvider.cs:688
  Discuz.Space.Provider.BlogProvider.GetPhotoInfo(IDataReader reader) in G:\webroot\Source Code\Discuz.Space\Provider\BlogProvider.cs:663
  Discuz.ForumPage.usercpspacemanagephoto.SetLogo() in G:\webroot\Source Code\Discuz.Web\aspx\1\usercpspacemanagephoto.aspx.cs:235
  Discuz.ForumPage.usercpspacemanagephoto.ShowPage() in G:\webroot\Source Code\Discuz.Web\aspx\1\usercpspacemanagephoto.aspx.cs:113
  Discuz.Web.UI.Pages.BasePage..ctor() in G:\webroot\Source Code\Discuz.Web.UI\Pages\BasePage.cs:580
  Discuz.ForumPage.usercpspacemanagephoto..ctor() in G:\webroot\Source Code\Discuz.Web\aspx\1\usercpspacemanagephoto.aspx.cs:76
  ASP.usercpspacemanagephoto_aspx..ctor() in c:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files\root\b1681f6b\945e457e\q4zeykuw.0.cs:0

[TargetInvocationException: 调用的目标发生了异常。]
  System.RuntimeType.CreateInstanceImpl(Boolean publicOnly) +0
  System.Activator.CreateInstance(Type type, Boolean nonPublic) +66
  System.Web.UI.TemplateControlParser.GetCompiledInstance(String virtualPath, String inputFile, HttpContext context) +164

[HttpException (0x80004005): 未能创建类型为“ASP.usercpspacemanagephoto_aspx”的页。]
  System.Web.UI.TemplateControlParser.GetCompiledInstance(String virtualPath, String inputFile, HttpContext context) +341
  System.Web.UI.PageParser.GetCompiledPageInstanceInternal(String virtualPath, String inputFile, HttpContext context) +43
  System.Web.UI.PageHandlerFactory.GetHandler(HttpContext context, String requestType, String url, String path) +44
  System.Web.HttpApplication.MapHttpHandler(HttpContext context, String requestType, String path, String pathTranslated, Boolean useAppConfig) +699
  System.Web.MapHandlerExecutionStep.System.Web.HttpApplication+IExecutionStep.Execute() +95
  System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +173
--------------------------------------------------------------------------------
版本信息: Microsoft .NET Framework 版本:1.1.4322.2300; ASP.NET 版本:1.1.4322.2300


我该怎么解决哦 
郁闷中 不知道是什么原因
1
查看完整版本: 对象不能从 DBNull 转换为其他类型。