狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

asp.net Repeater如何按照特定字段綁定特定的內容

admin
2017年11月17日 0:14 本文熱度 6387

一直覺得repeater不靈活,但是其實如果用后臺拼接html內容的話,結合object類型,其實可以變化出多變的內容。這里有個需求需要根據不同的基金經理來綁定變動后的基金經理內容,每個基金經理還有特定的ID用來拼接處html超鏈接來跳轉,困難來了,如果知道不同的內容的基金經理,是一個,二個或者多個呢,多個自然可以用逗號分隔,但是保存出來如何讓repeater綁定呢!?這里我采用了eval來實現。具體來看代碼:

首先要在實體類中定義一個標記字段和兩個用來存放基金經理名的string數組或者僅僅是一個基金經理,那用object對象最好不過,對于前段和中間都隱藏其具體含義,最后強綁定轉換就行,當然是根據標記字段來綁定。


[csharp] view plain copy
  1. public class FundSubscriptionPeriodTip  
  2.  {  
  3.      /// <summary>  
  4.      /// 公告日期  
  5.      /// </summary>  
  6.      public string NOTICEDATE { getset; }  
  7.   
  8.      /// <summary>  
  9.      /// 基金代碼  
  10.      /// </summary>  
  11.      public string FCODE { getset; }  
  12.   
  13.      /// <summary>  
  14.      ///  基金名稱  
  15.      /// </summary>  
  16.      public string SHORTNAME { getset; }  
  17.   
  18.      /// <summary>  
  19.      ///  認購起始日  
  20.      /// </summary>  
  21.      public string ISSBDATE { getset; }  
  22.   
  23.      /// <summary>  
  24.      ///  認購截止日  
  25.      /// </summary>  
  26.      public string ISSEDATE { getset; }  
  27.   
  28.      /// <summary>  
  29.      /// 驗證備案時間  
  30.      /// </summary>  
  31.      public string CHECKTIME { getset; }  
  32.   
  33.      /// <summary>  
  34.      /// 封閉運作期  
  35.      /// </summary>  
  36.      public string CLOSETIME { getset; }  
  37.   
  38.    
  39.   
  40.      /// <summary>  
  41.      ///  基金經理代碼  
  42.      /// </summary>  
  43.      public string JJJLID { getset; }  
  44.   
  45.      /// <summary>  
  46.      ///  基金經理姓名  
  47.      /// </summary>  
  48.      public string JJJL { getset; }  
  49.   
  50.   
  51.      /// <summary>  
  52.      /// 認購募集期  
  53.      /// </summary>  
  54.      public string ISSEDATEISSBDATE { getset; }  
  55.   
  56.      /// <summary>  
  57.      ///  基金經理姓名1  
  58.      /// </summary>  
  59.      public  object JJJLArray { getset; }  
  60.   
  61.   
  62.     
  63.   
  64.      /// <summary>  
  65.      ///  基金經理代碼1  
  66.      /// </summary>  
  67.      public object JJJLIDArray { getset; }  
  68.   
  69.      /// <summary>  
  70.      /// 基金經理數量  
  71.      /// </summary>  
  72.      public string FundMangerNumber { getset; }  
  73.                        
  74.  }  

  數據訪問層這邊就根據不同的基金經理的數量來分隔或者直接賦值:

[csharp] view plain copy
  1. #region 基金認購期  
  2.  public static ResultInfo<List<FundSubscriptionPeriodTip>> GetFundSubscriptionPeriodTip()  
  3.  {  
  4.      ResultInfo<List<FundSubscriptionPeriodTip>> ret = new ResultInfo<List<FundSubscriptionPeriodTip>>();  
  5.   
  6.      try  
  7.      {  
  8.          using (OracleConnection Conn = new OracleConnection(conn))  
  9.          {  
  10.              string sql;  
  11.              OracleCommand Cmd;  
  12.   
  13.   
  14.              sql = " select noticedate, " +  
  15.                    " fcode," +  
  16.                    " shortname, " +  
  17.                    " ISSBDATE, " +  
  18.                    " ISSEDATE, " +  
  19.                   "''7個工作日'' checktime,"+  
  20.                   "''一般3個月內'' closetime,"+  
  21.                    " jjjlid," +  
  22.                    " jjjl " +  
  23.                    " from  fundadmin.fund_jbxx " +  
  24.                    " where eisdel=0 and noticedate=to_date(sysdate)";  
  25.   
  26.   
  27.   
  28.   
  29.   
  30.   
  31.              Cmd = new OracleCommand(sql, Conn);  
  32.              //Cmd.Parameters.Add(new OracleParameter(":FCODE", fcode));  
  33.   
  34.   
  35.              Conn.Open();  
  36.              OracleDataAdapter oda = new OracleDataAdapter(Cmd);  
  37.              DataTable dtb = new DataTable();  
  38.              oda.Fill(dtb);  
  39.              List<FundSubscriptionPeriodTip> miLst = new List<FundSubscriptionPeriodTip>();  
  40.              foreach (DataRow row in dtb.Rows)  
  41.              {  
  42.                  FundSubscriptionPeriodTip entity = new FundSubscriptionPeriodTip();  
  43.   
  44.                  entity.NOTICEDATE = Convert.ToDateTime((row["NOTICEDATE"])).ToShortDateString();  
  45.   
  46.                  entity.SHORTNAME = FormatTools.ParseString(row["SHORTNAME"]);  
  47.                  entity.FCODE = FormatTools.ParseString(row["FCODE"]);  
  48.                  entity.ISSBDATE = Convert.ToDateTime(row["ISSBDATE"]).ToShortDateString();  
  49.                  entity.ISSEDATE = Convert.ToDateTime((row["ISSEDATE"])).ToShortDateString();   
  50.                  entity.JJJLID=FormatTools.ParseString(row["JJJLID"]);  
  51.                  entity.JJJL=FormatTools.ParseString(row["JJJL"]);  
  52.                  entity.CHECKTIME = FormatTools.ParseString(row["CHECKTIME"]);  
  53.                  entity.CLOSETIME = FormatTools.ParseString(row["CLOSETIME"]);  
  54.                  //entity.ISSEDATEISSBDATE = (entity.ISSEDATE - entity.ISSBDATE).TotalDays.ToString();  
  55.   
  56.               <span style="color:#ff0000;">   if (!string.IsNullOrWhiteSpace(entity.JJJLID))  
  57.                      if (entity.JJJLID.Contains(","))  
  58.                      {  
  59.                          entity.JJJLIDArray = entity.JJJLID.Split('','');  
  60.                          entity.FundMangerNumber = "1";  
  61.                      }  
  62.                      else  
  63.                      {  
  64.                          entity.JJJLIDArray = entity.JJJLID.ToString();  
  65.                          entity.FundMangerNumber = "0";  
  66.                      }  
  67.                  if (!string.IsNullOrWhiteSpace(entity.JJJL))  
  68.                      if (entity.JJJL.Contains(","))  
  69.                        entity.JJJLArray = entity.JJJL.Split('','');  
  70.                       
  71.                      else  
  72.                          entity.JJJLArray = entity.JJJL.ToString();  
  73. an>  
  74.                  miLst.Add(entity);  
  75.              }  
  76.   
  77.              ret.SetValue(miLst);  
  78.              if (miLst.Count == 0)  
  79.              {  
  80.                  ret.Message = "未查詢到任何記錄信息!";  
  81.                  ret.SetValue(new List<FundSubscriptionPeriodTip>());  
  82.              }  
  83.              Conn.Close();  
  84.          }  
  85.      }  
  86.      catch (Exception e)  
  87.      {  
  88.          if (e != null)  
  89.              ret.Message += e.Message;  
  90.      }  
  91.   
  92.      return ret;  
  93.   
  94.  }  
  95.  #endregion  

上面紅色部分是關鍵,后面是用前段來調用:

[html] view plain copy
  1. <tr>  
  2.                <td class="w200">  基金經理姓名  </td>  
  3.                <td class="pr200">  
  4.   
  5.                     <%--   <a href="http://fund.eastmoney.com/manager/<%#Eval("JJJLIDArray[0]")%>.html" target="_blank"> <%#Eval("JJJLArray[0]")%></a>,<a href="http://fund.eastmoney.com/manager/<%#Eval("JJJLIDArray[1]")%>.html" target="_blank"> <%#Eval("JJJLArray[1]")%></a>--%>  
  6.                       <%#IsFundMangerNumber(Eval("FundMangerNumber").ToString(),Eval("JJJLIDArray"),Eval("JJJLArray"))%>  
  7.                   
  8.                    
  9.                </td>  
  10.            </tr>  


后臺代碼就實際來拼接html內容:

[csharp] view plain copy
  1. public string IsFundMangerNumber(string FundMangerNumber, object JJJLIDArray, object JJJLArray)  
  2.        {  
  3.            string Show="";  
  4.            if (FundMangerNumber == "1")  
  5.            {  
  6.                for (int i = 0; i < ((string[])JJJLArray).Count(); i++)  
  7.                {  
  8.                    Show = Show+" <a href=\"http://fund.eastmoney.com/manager/" + ((string[])JJJLIDArray)[i] + ".html\" target=\"_blank\">" + ((string[])JJJLArray)[i] + "</a>";  
  9.                    if (i < (((string[])JJJLArray).Count()-1))  
  10.                        Show = Show + ",";  
  11.                }  
  12.            }  
  13.            else  
  14.            {  
  15.                Show = Show + "<a href=\"http://fund.eastmoney.com/manager/" + JJJLIDArray + ".html\" target=\"_blank\">" + JJJLArray + "</a>";  
  16.   
  17.            }  
  18.                return Show;  
  19.        }    

該文章在 2017/11/17 0:14:43 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved