Tuesday, September 22, 2009

ConnectionTimeout vs. CommandTimeout

[This was originally posted at http://timstall.dotnetdevelopersjournal.com/connectiontimeout_vs_commandtimeout.htm]

SQL timeouts can be very annoying, especially for internal development tools where performance isn't critical.

A lot of developers will try fixing this by modifying the connection string by appending "Connect Timeout=300". Normally this is easy because the connection string is stored in some config file.

However, it still usually fails. This is because there's a big difference between SqlConnection.ConnectionTimeout and SqlCommand.CommandTimeout.

If you're running a command, like a snippet of SQL or a stored proc, then your code needs to set the CommandTimeout. Something like so:

SqlConnection con = new SqlConnection(strDbCon);
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = strText;
cmd.CommandTimeout = 10000; //no relation to con.ConnectionTimeout

Obviously, that's very minimalist code, but that's the general idea. For a robust data access layer, you'd make the timeout configurable.

1 comment:

  1. Hiện nay tại các văn phòng công ty doanh nghiệp luôn lựa chọn cho văn phòng mình những mẫu bàn làm việc ưng ý cho nên hiện nay trên thị trường có các kiểu bàn văn phòng hòa phát được tìm kiếm xu hướng tăng hiện nay. Chính vì thế những mẫu bàn trên thị trường có khá nhiều mẫu mã với thiết kế đa dạng nhưng đều tạp trung vào các tiêu chí chuẩn của văn phòng đặc biệt là tuân theo phong thủy văn phòng làm việc của nhân viên. Để chọn lựa mua bàn làm việc trên thị trường nội thất bạn cần nắm vững những kiến thức và nhu cầu như thế nào cho văn phòng làm việc của mình.
    Vấn đề đầu tiên nhiều chủ doanh nghiệp băn khoăn về giá?
    Mua hàng ở đâu giá rẻ, giá tốt mà sản phẩm lại chất lượng… những câu hỏi này đều xoay quanh chi phí đầu tư. Tôi sẽ gợi ý cho bạn rằng: cốt lõi nhất nằm ở việc, bạn xác định phạm vi chi phí dựa trên mục đích sử dụng ra sao!
    Nếu bạn đầu tư bàn làm việc dành cho không gian văn phòng lãnh đạo, nơi bạn sẽ thường xuyên phải tiếp đối tác, để chứng minh cũng như tạo niềm tin tuyệt đối với khách hàng, bạn nên cân nhắc đầu tư mức chi phí cao hơn cho một chiếc bàn làm việc hay cả hệ thống bàn sang trọng, chuyên nghiệp với thiết kế tinh tế đẹp mắt hơn.
    Còn nếu bạn đầu tư bàn làm việc giá rẻ hcm dành cho không gian làm việc của nhân viên, nơi phục vụ lợi ích tối đa cho công việc của họ, thì lúc này bạn cần những sản phẩm đơn giản, tiện dụng và có khả năng đồng bộ hóa cao, tạo ra sự chuyên nghiệp. Với mục đích như vậy, rõ ràng, sản phẩm bạn chọn mua sẽ có chi phí thấp hơn nhiều. Dưới đây tôi sẽ gợi ý cho bạn vài lựa chọn.

    ReplyDelete