程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> .NET實例教程 >> 在位置 0 處沒有任何行

在位置 0 處沒有任何行

編輯:.NET實例教程
今天,程序突然出現下面的錯誤: 

說明: 執行當前 Web 請求期間,出現未處理的異常。請檢查堆棧跟蹤信息,以了解有關該錯誤以及代碼中導致錯誤的出處的詳細信息。

異常詳細信息: System.IndexOutOfRangeException: 在位置 0 處沒有任何行。

源錯誤:

“/auto.dg.gd.cn”應用程序中的服務器錯誤。

在位置 0 處沒有任何行。

 



行 32:     private void Data_Binding()
行 33:     ...{
行 34:         DataRow dr = obJSynopsis.GetSynopsisByMember(_memberKey).Rows[0];
行 35:         this.lblCompanyName.Text = dr["CompanyName"].ToString();
行 36:         this.lblAddress.Text = dr["Address"].ToString();

源文件: d:\auto.dg.gd.cn\CheHang\CheHangPageFooter.ascx.cs    行: 34

堆棧跟蹤:



[IndexOutOfRangeException: 在位置 0 處沒有任何行。]
   System.Data.RBTree`1.GetNodeByIndex(Int32 userIndex) +148
   System.Data.RBTree`1.get_Item(Int32 index) +18
   System.Data.DataRowCollection.get_Item(Int32 index) +12
   CheHang_CheHangPageFooter.Data_Binding() in d:auto.dg.gd.cnCheHangCheHangPageFooter.ascx.cs:34
   CheHang_CheHangPageFooter.Page_Load(Object sender, EventArgs e) in d:auto.dg.gd.cnCheHangCheHangPageFooter.ascx.cs:29
   System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +13
   System.Web.Util.CallIEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +43
   System.Web.UI.Control.OnLoad(EventArgs e) +80
   System.Web.UI.Control.LoadRecursive() +49
   System.Web.UI.Control.LoadRecursive() +132
   System.Web.UI.Control.LoadRecursive() +132
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3750

版本信息: Microsoft .NET Framework 版本:2.0.50727.1378; ASP.Net 版本:2.0.50727.1378

檢查經發現,原來“_memberKey”沒有取得到值時,就去做數據綁定。

解決的辦法,加上一個判斷。



  if (obJSynopsis.GetSynopsisByMember(_memberKey).Rows.Count > 0)
  ...{
            DataRow dr = obJSynopsis.GetSynopsisByMember(_memberKey).Rows[0];
           //other code
}
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved