日期:2014-05-17  浏览次数:20766 次

將全局變量dataset賦值給一個局部變量dataset,爲什麽對局部變量進行刪除會影響到全局變量?怎麼避免
RT
private static DataSet ds_3S;
        private static DataSet ds_5S;
        /// <summary>
        /// 獲得5S和3S的SN結果集
        /// </summary>
        private static void getSN()
        {
            string Model_3S = "……";
            string Model_5S = "……";

            string Sql = "……";
            ds_3S = getConn.retOraDS(Sql);
            //5S
            Sql = "……";
            ds_5S = getConn.retOraDS(Sql);
        }
        private static void DoDsRepair()
        {
            DataSet Rds = new DataSet();
            if (dtMMODEL == "……")
            {
               Rds = ds_3S;
            }
            else if (dtMMODEL == "……")
            {
               Rds = ds_5S;
            }
            for (int j = Rds.Tables[0].Rows.Count - 1; j >= 0; j--)
            {
               ……
                 if(……)
               {
                   Rds.tables[0].rows.removeAt(j);//對rds操作結果使得ds_3S和ds_5S的rows.count都發生了改變,怎麼才能避免這種情況?
               }
            } 
        }

就是這個樣子,程序沒問題,我就問的是怎麼避免以上的情況