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

Đề tài: Một cách giải quyết khi có lỗi sai xảy ra trong ứng dụng.

  1. #1
    Ngày gia nhập
    08 2006
    Nơi ở
    tp HCM
    Bài viết
    26

    Mặc định Một cách giải quyết khi có lỗi sai xảy ra trong ứng dụng.

    Một cách giải quyết khi có lỗi sai xảy ra trong ứng dụng mà không làm cho người sử dụng lúng túng.

    Nhân thắc mắc của một bạn trên diễn đàn dot.net.vn, tôi có trao đổi hướng giải quyết của mình và bây giờ post lại lên 4rum này cho các bạn tham khảo:

    Thông thường khi viết code programmer thường có những đọan lệnh bẫy lỗi, ví dụ như trong C# đọan bẫy lỗi thường dùng là:

    try {}

    catch(Exception ex)
    {
    MessageBox.Show(ex.Message);
    }

    Nếu xảy ra lỗi thì sẽ có một thông báo về lỗi hiện lên và dĩ nhiên nó sẽ là tiếng Anh; do đó khi xuất hiện lỗi người sử dụng không biết chuyện gì xảy ra có thể làm họ hoang mang, không tin tưởng vào chương trình đang sử dụng ... Làm sao giải quyết được việc này ?

    Vấn đề này là nỗi niềm của hầu hết lập trình viên mới vào nghề, với lập trình viên kinh nghiệm thì hầu như đều có cách giải quyết riêng; nhân topic này tôi chia sẻ với mọi người giải pháp mà tôi thường dùng :
    dùng 1 table trong CSDL để chứa các thông báo lỗi, table này gồm một số field để lưu giữ : thông báo lỗi, thời gian lỗi sai xảy ra, địa chỉ IP của máy phát sinh lỗi, tên program gây ra lỗi, câu lệnh gây ra lỗi,. . . . Viết một Stored Procrdure để Insert mẫu tin mới vào table này mỗi khi có lỗi sai xảy ra, còn câu thông báo lỗi xuất hiện ra màn hình cho người sử dụng thì là một câu cố dịnh bằng tiếng Việt, như thế thì dạng lệnh của bạn có thể thay đổi lại như sau :

    try {}

    catch (Exception ex)
    {
    // gọi thực hiện Stored procedure để insert 1 record mới vào
    // table chứa lỗi sai

    MessageBox.Show("Chương trình gặp sự cố, bạn hãy báo cho Admin để có hướng giải quyết");
    return;
    }

    như thế bạn chỉ cần theo dõi table chứa thông báo lỗi là có thể chỉnh sửa hòan thiện lại hệ thống chương trình của mình.

    Đây là cách mà tôi hiện nay vẫn đang dùng, bạn nào có cách làm khác hay ý tưởng gì chia sẻ cho anh em cùng học hỏi.

  2. #2
    Ngày gia nhập
    07 2007
    Bài viết
    1

    Thumbs up Đóng góp ý tưởng

    Hi! Thanks bạn đã chia sẻ kinh nghiệm.

    Nếu đã thiết kế như vậy thì trong Table chứa thông tin lỗi ta thêm một
    Field nữa là "VietnameseError". Khi gặp thông báo lỗi thì trước tiên mình
    tìm trong Table này xem Field VietnameseError co khác "" hay không.
    Nếu = "" thì thực hiện Procedure Insert và Show MesageBox như bạn đã
    trình bày ở trên. Còn nếu Field VietnameseError khác "" thì lấy dữ liệu ở
    Field này cho vào MessageBox.

    Như vậy, sau một thời gian, những Eror thường gặp sẽ được thông báo
    bằng Tiếng Việt!!! Và Table này có thể được sử dụng cho những program khác.

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

  1. Giải quyết một số vấn đề thường gặp trong lập trình C#
    Gửi bởi Yin Yang trong diễn đàn Tutorials và Thủ thuật lập trình C#, ASP.NET
    Trả lời: 3
    Bài viết cuối: 18-08-2011, 05:24 PM
  2. Hướng giải quyết bài tập tìm kho tàng trong C
    Gửi bởi SKldjeu trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 0
    Bài viết cuối: 06-04-2011, 09:53 PM
  3. Giải quyết vấn đề barcode trong c#
    Gửi bởi laithanhdanhvnn 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: 31-01-2010, 01:15 AM
  4. Xóa file trong win ! Nan giải quá , nghĩ cả ngày nay chưa giải quyết được.
    Gửi bởi megaboyvn trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 2
    Bài viết cuối: 08-10-2009, 02:21 AM
  5. Buổi hội thảo về kỹ năng ra quyết định và giải quyết vấn đề
    Gửi bởi nguoingu trong diễn đàn Giới thiệu website, sản phẩm của bạn
    Trả lời: 0
    Bài viết cuối: 11-08-2009, 03:26 PM

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