Chuyển đến nội dung chính

Bài đăng

Chạy nhiều version Firefox trên 1 máy tính

Nếu các bạn lập trình và cần thử nghiệm trang web trên nhiều phiên bản khác nhau của Firefox thì đây là công cụ vô cùng tuyệt vời. Nó tích hợp Firefox từ phiên bản 2.0 tới bản 12 nightly (tính tới thời điểm 27-12-2011) và có sẵn 2 addon vô cùng hữu ích là Firebug & Web Developer. Đó là chương trình Utilu Mozilla Firefox Collection. Bạn vào trang http://utilu.com/UtiluMFC/ để tải phiên bản mới nhất về. Chúc các bạn thành công.

Giới thiệu về kiểu Tuple

C# 4.0 giới thiệu 1 tính năng mới là Tuple. Mục đích sử dụng Tuple là tạo ra các đối tượng có kiểu dữ liệu phức tạp nhằm để lưu trữ dữ liệu tạm thời. Lưu ý: Mỗi Tuple định nghĩa sẵn các item1, item2,... Có tối đa 8 items được định nghĩa. public class Tuple <T1> public class Tuple <T1, T2> public class Tuple <T1, T2, T3> public class Tuple <T1, T2, T3, T4> public class Tuple <T1, T2, T3, T4, T5> public class Tuple <T1, T2, T3, T4, T5, T6> public class Tuple <T1, T2, T3, T4, T5, T6, T7> public class Tuple <T1, T2, T3, T4, T5, T6, T7, TRest>

Kết thúc hàm trả về trong WCF

Trong WCF, bạn có thể rất dễ dàng viết rất nhiều hàm gởi kết quả cho bên Client. Ví dụ: public int Test(int a, int b) { return a + b; } Nhưng nếu giả sử bạn đọc 1 file và trả về client là streamfile, thì chuyện gì xảy ra nếu bạn đọc file đó lần 2. Nó sẽ báo là có ai đó đang đọc file (vì bạn đọc và không đóng file lại :d) Để hủy giá trị trả về, trong WCF cung cấp cho bạn 2 lựa chọn: Thiết lập OperationBehaviorAttribute.AutoDisposeParameters = true  Sử dụng sự kiện OperationCompleted.

Chạy SQL Compact 4.0 trên Win XP

Bạn cài đặt theo thứ tự này: Bạn phải cài đặt lại .NET Framework 2.0. Windows Installer 3.1. .NET Framework 3.5, rồi 4.0 SQL Compact 3.5 (nếu có sp1 hay sp2 càng tốt) SQL Compact 4.0. Nâng cấp Win XP lên bản Service Pack 3 (SP3). Để thử nghiệm, bạn có thể dùng chương trình Database.NET để đọc file sdf. Chúc các bạn thành công!!!

Data Binding with INotifyPropertyChanged

Làm sao để cập nhật trạng thái, dữ liệu trên giao diện phần mềm nếu phần mềm của bạn chạy đa luồng (Multithreading). Cách đơn giản nhất là dùng Data binding, mà ví dụ của tôi ở đây là sử dụng lớp INotifyPropertyChanged. Namespace : System.ComponentModel; Lớp interface này có duy nhất 1 thành viên là public event PropertyChangedEventHandler PropertyChanged ; Để thực thi interface này, bạn cần implement phương thức PropertyChanged.

Khắc phục tình trạng IE/Opera cố gắng download file json/application

Khi server trả về 1 chuỗi json, IE/Opera không tự động nhận diện ra và cố gắng download file đó về. Cách khắc phục: Bạn thêm header cho kết quả trả về. Trong ASP.NET MVC: return Json(result, "text/plain");  Trong PHP: header('Content-type: text/plain');