模板维护-模板解析
? ? ? ? 關于模板的解析。主要是關于主模板的解析。
? ? ? ? 首先來說一下業務邏輯。首先點擊樹的節點。將樹的code付給物資編碼,然后通過物資編碼去查詢主模板(包含主模板ID和主模板信息)和子模板(不帶{}的信息);
? ? ? ? 假設有{}形式的信息。我們把主模板ID和主模板信息付給String參數,傳到前臺。在前臺,首先推斷傳過來的String參數是否為空。假設為空則說明沒有主模板,否則載入子模板信息。
? ? ? ? 解析主模板:
? ? ? ? 第一步:
? ? ? ? 從上面的邏輯中獲取到主模板信息是 {:內燃機車,0;電力機車,1;客車,2;貨車,3;動車組,4;待報廢,5;其它淘汰物資,9;}這樣的形式的數據。
? ? ? ? 第二步:
? ? ? ? 我們對它進行拆分。
? ? ? ? 定義一個datatable,然后為它分配兩個字段:一個ID,一個Name。
? ? ? ? 第三步:
? ? ? ? 分割字符串。先把最前面的兩個字符 {: 刪除 ? 方法例如以下:Substring(2, Smatlcate.Length - 2)
? ? ? ? 字符串則變成了 ? ?內燃機車,0;電力機車,1;客車,2;貨車,3;動車組,4;待報廢,5;其它淘汰物資,9;}?
? ? ? ? 然后我們將最后的 } 去掉 ? 方法例如以下:.Split('}')[0].Trim() ?
?
? ? ? ? 字符串則變成了 ? ?內燃機車,0;電力機車,1;客車,2;貨車,3;動車組,4;待報廢,5;其它淘汰物資,9;
?
? ? ? ? 我們將最后的分號;去掉 ?方法例如以下:TrimEnd(';')
?
? ? ? ? 字符串則變成了 ? ?內燃機車,0;電力機車,1;客車,2;貨車,3;動車組,4;待報廢,5;其它淘汰物資,9
第三步:
? ? ? ? 這樣我們就能進行數組轉換了:string[] strArr = Smatlcate.Split(';') 這是以分號位分隔符進行的數組轉換
? ? ? ? 第四步:
? ? ? ? 最后我們就能夠進行為原先定義的datatable(包括兩個地段)循環賦值了,方法例如以下:
? ? ? ? ?DataRow dr = dt_ChildTemplets.NewRow();
? ? ? ? ?dr["ID"] = strArr[i].Split(',')[1].Trim();
? ? ? ? ?dr["NAME"] = "系列:" + strArr[i].Split(',')[0].Trim() + "," + strArr[i].Split(',')[1].Trim();
? ? ? ? 最后我們就成功的將數組的信息傳到datatable中去了。
? ? ? ? ?dt和下拉列表進行數據綁定,就能夠賦值了。
? ? ? ? ?興許還會有子模板解析和模板測試的博文。
總結
- 上一篇: CentOS7下安装GUI图形界面
- 下一篇: Sublime Text 3 插件安装