示例#1
0
 /// <summary>
 /// (DB)依SQL指令取得資料結果(回傳DataTable)
 /// </summary>
 /// <param name="strSql">SQL</param>
 /// <returns></returns>
 public DataTable _DB_GetData(string strSql, bool cache = false, int cacheSeconds = 60)
 {
     if (cache && cacheSeconds > 0)
     {
         cacheDatas.RemoveAll(x => x.createTime < DateTime.Now.AddSeconds(cacheSeconds * -1));
         var result = cacheDatas.Find(x => x.strSql == strSql);
         if (result == null)
         {
             var dt = DBC.GetSQLCmd_DT(strSql);
             cacheDatas.Add(new CacheData()
             {
                 strSql     = strSql,
                 dt         = dt,
                 createTime = DateTime.Now
             });
             return(dt);
         }
         else
         {
             return(result.dt);
         }
     }
     else
     {
         return(DBC.GetSQLCmd_DT(strSql));
     }
 }
示例#2
0
 /// <summary>
 /// (DB)依SQL指令取得資料結果(字串陣列[第n欄])
 /// </summary>
 /// <param name="strSql">SQL</param>
 /// <param name="n">第n欄(從0開始)</param>
 public List <string> _DB_GetStrArr(string strSql, int n)
 {
     return(DBC.GetSQLCmd_DT(strSql)
            .AsEnumerable()
            .Select(row => row.Field <object>(n).ToString()).ToList());
 }