慕的地8271018
2018-12-07 07:27:01
StartFragment
今天遇見一個很蹊蹺的問題,至今沒搞出來?求高手?在走斷點的時候一切正常,但直接運行的時候?有個變量老獲取不到值高手?幫忙
備注:我用了好多foreach循環(huán),但走斷點的時候都可以賦值,直接運行就不可以賦值啦
下面是代碼
?
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;
using BLL;using Model;using System.Threading;public partial class psychologist_Show_02 : System.Web.UI.Page{??? protected List<List<InterestLogs>> li = new List<List<InterestLogs>>();//log檔信息??? protected List<List<InterestStars>> starts = new List<List<InterestStars>>();//明星信息??? protected string tx="&tx=" ;//特性??? protected void Page_Load(object sender, EventArgs e)??? {??????? if (!IsPostBack)??????????? Filter();??? }??? /// <summary>??? /// 篩選器??? /// </summary>??? private void Filter() {??????? double ys = 0.0; //藝術(shù)型(11)??????? double sw = 0.0; //事務(wù)型(12)??????? double jy = 0.0; //經(jīng)營(13)??????? double yj = 0.0; //研究(14)??????? double sh = 0.0; //社會(15)??????? double js = 0.0; //技術(shù)(16)??????? double zran = 0.0; //自然(17)??????? double qs = 0.0; //權(quán)利(18)??????? if (Request.QueryString["ys"] != null)??????????? ys = Convert.ToDouble(Request.QueryString["ys"]);??????? else??????????? Response.RedirectPermanent("Show_01.aspx");??????? if (Request.QueryString["sw"] != null)??????????? sw = Convert.ToDouble(Request.QueryString["sw"]);??????? else??????????? Response.RedirectPermanent("Show_01.aspx");??????? if (Request.QueryString["jy"] != null)??????????? jy = Convert.ToDouble(Request.QueryString["jy"]);??????? else??????????? Response.RedirectPermanent("Show_01.aspx");??????? if (Request.QueryString["yj"] != null)??????????? yj = Convert.ToDouble(Request.QueryString["yj"]);??????? else??????????? Response.RedirectPermanent("Show_01.aspx");??????? if (Request.QueryString["sh"] != null)??????????? sh = Convert.ToDouble(Request.QueryString["sh"]);??????? else??????????? Response.RedirectPermanent("Show_01.aspx");??????? if (Request.QueryString["js"] != null)??????????? js = Convert.ToDouble(Request.QueryString["js"]);??????? else??????????? Response.RedirectPermanent("Show_01.aspx");??????? if (Request.QueryString["zran"] != null)??????????? zran = Convert.ToDouble(Request.QueryString["zran"]);??????? else??????????? Response.RedirectPermanent("Show_01.aspx");??????? if (Request.QueryString["qs"] != null)??????????? qs = Convert.ToDouble(Request.QueryString["qs"]);??????? else??????????? Response.RedirectPermanent("Show_01.aspx");??????? //符合的特性??????? List<int> list = new List<int>();??????? if (ys > 8)??????????? list.Add(11);??????? if (sw > 7)??????????? list.Add(12);??????? if (jy > 8)??????????? list.Add(13);??????? if (yj > 8)??????????? list.Add(14);??????? if (sh > 8)??????????? list.Add(15);??????? if (js > 8)??????????? list.Add(16);??????? if (zran > 8)??????????? list.Add(17);??????? if (qs > 8)??????????? list.Add(18);??????? //特性??????? string dexing = "";??????? //關(guān)鍵字??????? string kw = "";??????? //描述??????? string ms = "";??????? //是否有符合的特性??????? if (list.Count > 0)??????? {??????????? ??????????? if (list.Count == 8)??????????? {??????????????? //全部符合的特性的提示??????????????? ms += "根據(jù)您第一部分的數(shù)據(jù)分析結(jié)果,您的特性適合多種類型的職業(yè),故邀請您繼續(xù)填答第二部分的題目,以便幫您做進(jìn)一步的分
析。謝謝!";??????????????? tx += "0";??????????? }??????????? else??????????? {??????????????? foreach (int item in list)??????????????? {??????????????????? if (item == 11)??????????????????????? dexing += "藝術(shù)型,";??????????????????? if (item == 12)??????????????????????? dexing += "事務(wù)型,";??????????????????? if (item == 13)??????????????????????? dexing += "經(jīng)營型,";??????????????????? if (item == 14)??????????????????????? dexing += "研究型,";??????????????????? if (item == 15)??????????????????????? dexing += "社會型,";??????????????????? if (item == 16)??????????????????????? dexing += "技術(shù)型,";??????????????????? if (item == 17)??????????????????????? dexing += "自然型,";??????????????????? if (item == 18)??????????????????????? dexing += "權(quán)利型,";??????????????????? starts.Add(InterestStarsBLL.GetStarsByStyles(item));??????????????????? tx += item.ToString()+",";//tx賦值??????????????? }
??????????????? dexing = dexing.Substring(0, dexing.LastIndexOf(','));??????????????? //什么類型的人??????????????? foreach (int l in list)??????????????? {??????????????????? InterestLogs logs = new InterestLogs();??????????????????? logs.userID = 1;??????????????????? logs.select_scores = 3;??????????????????? logs.styles = l;//特性??????????????????? foreach (InterestLogs item in InterestLogsBLL.GetLogsByUserIdAndStyles(logs))??????????????????? {??????????????????????? kw += item.InteresTopics.keywords + ",";??????????????????? }??????????????? }??????????????? if (kw.Length > 1)??????????????? {??????????????????? kw = kw.Substring(0, kw.LastIndexOf(','));//這里老付不了值,但走斷點可以,直接運行就不行啦 ??????????????? }??????????????? //個別幾個符號的提示??????????????? ms += "您是個" + kw + "的人,可能會對" + dexing + "的職業(yè)類型感興趣。";??????????? }??????? }??????? else {??????????? //沒有一個符合的特性的提示??????????? ms += "根據(jù)您第一部份的數(shù)據(jù)分析結(jié)果,您尚無法確定自己是一個甚么樣的人,對于職業(yè)類型沒有清楚的方向,故邀請您繼續(xù)填答第二部
分的題目,以便幫您做進(jìn)一步的分析。謝謝!";??????????? tx += "0";??????? }??????? this.Literal1.Text = ms;???? ??? }? }
11 回答

30秒到達(dá)戰(zhàn)場
TA貢獻(xiàn)1828條經(jīng)驗 獲得超6個贊
我覺得你應(yīng)該看看kw = kw.Substring(0, kw.LastIndexOf(','))后,是否還有值,如果本身就已經(jīng)沒有值了,賦值后當(dāng)然是沒有值了;還有看看是否已經(jīng)跳進(jìn)了當(dāng)前的if判斷

嚕嚕噠
TA貢獻(xiàn)1784條經(jīng)驗 獲得超7個贊
可能是正確賦值之后,邏輯錯誤導(dǎo)致再次賦值或者清空了。重新檢查邏輯關(guān)系和代碼。斷點不要跟到就撤銷,繼續(xù)跟直到出錯為止。
- 11 回答
- 0 關(guān)注
- 681 瀏覽
添加回答
舉報
0/150
提交
取消