Từ 1 tới 1 trên tổng số 1 kết quả

Đề tài: Không biết điều chỉnh timeout của cái gì ?

  1. #1
    Ngày gia nhập
    04 2011
    Bài viết
    4

    Red face Không biết điều chỉnh timeout của cái gì ?

    Chào các bác,

    Mình có viết 1 lớp làm nhiệm vụ giao tiếp với database và 1 lớp liên quan đến tables có nội dung như phía dưới. Vấn đề mình gặp phải là khi cần tính toán số khách hàng trong từng giờ (hàm intCusByHour) là nó hoạt động tốt đối với khoảng ngay1 đến ngay2 nhỏ hơn 18 ngày. Quá thời gian này là xảy ra lỗi timeout:

    Mình nghĩ là timeout không đủ để làm tiếp nhưng không biết điều chỉnh timeout gì ? chỗ nào ? Mong các bác chỉ giúp.
    Visual C# Code:
    1. DateTime ngay1, ngay2;
    2. DataTable dt= new DataTable();
    3. //Convert sang kiểu text để lấy dd/mm/yy từ ngày, sau đó convert lại thành datetime để ngày trở thành dd/mm/yy 12:00:00:00 AM
    4. dt = dp.SelectData("Select distinct Convert(Datetime,Convert(nchar(10),Ngay,103),103) as Ngay From tblBanHang Where Ngay Between '" + ngay1 + "' And '" + ngay2 + "'");
    5.             dp.ExecutionNonQuery("Delete From tblTem");
    6.             TableActs dt1 = new TableActs();
    7.             int[] ArrCus;
    8.             ArrCus = new int[25];
    9.             foreach (DataRow dr in dt.Rows)
    10.             {
    11.                 for (int i = 6; i < 25; i++)
    12.                 {
    13.                     // Tính lượt khách trong từng giờ
    14.                     ArrCus[i] = dt1.intCusByHour(this.comboBox1.SelectedValue.ToString(), dr["Ngay"].ToString(), i);
    15.                 }
    16.                 dp.ExecutionNonQuery("Insert Into tblTemp(Ngay,c6,c7,c8,c9,c10,c11,c12,c13,c14,c15,c16,c17,c18,c19,c20,c21,c22,c23,c24) Values('" + dr["Ngay"] + "','" + ArrCus[6] + "," + ArrCus[7] + "," + ArrCus[8] + "," + ArrCus[9] + "," + ArrCus[10] + "," + ArrCus[11] + "," + ArrCus[12] + "," + ArrCus[13] + "," + ArrCus[14] + "," + ArrCus[15] + "," + ArrCus[16] + "," + ArrCus[17] + "," + ArrCus[18] + "," + ArrCus[19] + "," + ArrCus[20] + "," + ArrCus[21] + "," + ArrCus[22] + "," + ArrCus[23] + "," + ArrCus[24] + ")");
    17.             }
    18.  
    19. class DataProviderSQL
    20.     {
    21.         static string _connectionString;
    22.         SqlConnection cn;
    23.         SqlDataAdapter _da;
    24.         SqlCommand _cm;
    25.         bool _status;
    26.  
    27.         public void Connect()
    28.         {
    29.             cn = new SqlConnection(_connectionString);
    30.            
    31.             cn.Open();
    32.            
    33.             if (cn.State == ConnectionState.Open)
    34.                 _status = true;
    35.         }
    36.  
    37.         public void Disconnect()
    38.         {
    39.             cn.Close();
    40.             cn.Dispose();
    41.             _status = false;
    42.         }
    43.  
    44.         public string ConnectionString
    45.         {
    46.             set { _connectionString = value; }
    47.             get { return _connectionString; }
    48.         }
    49.  
    50.         public DataTable SelectData(string sqlString)
    51.         {
    52.             DataTable dt = new DataTable();
    53.             this.Connect();
    54.             if (_status)
    55.             {
    56.                 _cm = new SqlCommand(sqlString, cn);
    57.                 _cm.CommandTimeout = 100;
    58.                 _da = new SqlDataAdapter();
    59.                 _da.SelectCommand = _cm; ;
    60.                 _da.Fill(dt);
    61.               //  _da = new SqlDataAdapter(sqlString, cn);
    62.               //  _da.Fill(dt);
    63.             }
    64.             this.Disconnect();
    65.             return dt;
    66.         }
    67.         public void ExecutionNonQuery(string sqlString)
    68.         {
    69.             this.Connect();
    70.             if (_status)
    71.             {
    72.                 _cm = cn.CreateCommand();
    73.                 _cm.CommandType = CommandType.Text;
    74.                 _cm.CommandText = sqlString;
    75.                 _cm.ExecuteNonQuery();
    76.             }
    77.             this.Disconnect();
    78.         }
    79.         public bool Status
    80.         {
    81.             set { _status = value; }
    82.             get { return _status; }
    83.         }
    84.     }
    85.  
    86.  
    87. class TableActs
    88.     {
    89.  
    90.         public int intCusByHour(String DateSt, int Hour)
    91.         {
    92.             DataTable dt = new DataTable();
    93.             int i = 0;
    94.             string strTemp = "Select Count(MaLuot) From tblBanHang Where Convert(Datetime,Convert(nchar(10),Ngay,103),103)='" + NgaySt + "' And DatePart(hh,Ngay)=" + Hour ;
    95.             DataProviderSQL dp = new DataProviderSQL();
    96.             dp.Connect();
    97.             if (dp.Status == true)
    98.             {
    99.                 dt = dp.SelectData(strTemp);
    100.                 foreach (DataRow dr in dt.Rows)
    101.                 {
    102.                     if (Convert.IsDBNull(dr[0]))
    103.                         i = 0;
    104.                     else
    105.                         i = (int)dr[0];
    106.                 }
    107.             }
    108.             return i;
    109.             dp.Disconnect();
    110.         }
    111.     }
    Đã được chỉnh sửa lần cuối bởi huuhung : 05-01-2012 lúc 06:52 PM. Lý do: Cho code vào thẻ

Các đề tài tương tự

  1. Cách thế nào để httptransportSE hết timeout?
    Gửi bởi wintervt trong diễn đàn Lập trình Android và Java Mobile
    Trả lời: 2
    Bài viết cuối: 10-07-2013, 10:04 PM
  2. Lỗi timeout Expired
    Gửi bởi pes_10 trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 2
    Bài viết cuối: 11-12-2011, 08:36 PM
  3. Lỗi timeout expired với kết nối với sql2008
    Gửi bởi meocontaplamC trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 1
    Bài viết cuối: 15-09-2011, 09:18 AM
  4. Lỗi timeout expired khi kết nối sql server từ xa?
    Gửi bởi tientan trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 4
    Bài viết cuối: 24-06-2011, 12:32 AM
  5. Lỗi timeout khi tra cứu dữ liệu quá lớn
    Gửi bởi giangmx trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 5
    Bài viết cuối: 13-05-2011, 09:07 AM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn