Posts

Edit inline with Repeater ASP.NET (Thêm sửa xóa trên grid với Repeater))

Image
Hi! Happy New Year! Hôm nay là ngày đầu tiên của năm mới 2012 ngồi trên máy tính không biết làm gì code vài dòng lấy may đầu năm. Chắc hẳn các bạn đã đã gặp nhiều trang Web cho phép bạn có thể edit hoặc thêm mới trên một cái Grid (hoặc bạn có thể phải làm nó). Như thế này chẳng hạn: Vậy bạn sẽ làm thế nào đây, mình có ý tưởng dùng repeater để làm nếu các bác có ý kiến gì đóng góp thì mình xin tiếp thu và cảm ơn nhưng không hậu tạ đâu he he. Bài toán đặt ra là cho 1 grid như trên và khi click vào "Edit" thì no hiện ra một form để phục vụ việc cập nhật lại thông tin. Trước khi tiếp tục chúng ta cần tim hiều chút ít về Repeater nhỉ ? Cái tên của nó có vẻ đủ thông tin roi nhỉ :D? vậy mình nói luôn cách cài đặt nó nhé. Khi bạn design html thi repeater se có dạng như hình sau  Ở đây chúng ta chỉ tập chung vào phần "<ItemTemplate>". bạn thấy nó có một asp:Panel. Đây chính là Form edit sẽ hiển thị khi Edit và đương nhiên là k

Quay lại post bài!

Blog này lâu quá rồi không post gì. Sắp tới công việc ổn định mình sẽ tiếp tục viết bài.

Con đường cũ sao ngày một xa qua.

Nhiều khi muốn vứt tất đề được ngồi code như trước kia sao bầy giơ không được.

No job and nothing!

Làm gì đây? Chơi? Ngủ? Đi bụi? Chẳng gì hêt? ...

Dependency Injection Pattern!

Ngày nay, DI là một mẫu thiết kễ phổ biến hiện nay. Nó giúp cho việc thiết kễ và thực hiện "loosely couple", sử dụng lại (reusable), có thể test (testable) trong phần mềm của bạn bằng cách giảm sự phụ thuộc của các đối tượng. Phụ thuộc của các đối tượng. (Object Dependency) Object có thể phụ thuộc nhau theo hai cách: tight coupling và loose coupling. Nếu các Object không có liên kết chặt chẽ với nhau thì việc thay đổi các Object sẽ đơn giản và ngược lại. Ví dụ: public class C2 { //Some code } public class C1 { C2 bObject = new C2(); //Some code } Class C1 phụ thuộc vào C2 vì C1 chứa C2 đây gọi "tight". Nếu bạn phải tay đôi code thì khi làm bạn chỉ có thể thoải mái thay đổi C1, còn với C2 bạn sẽ phải tính toán không là sẽ ảnh hưởng đến C1. Thuận lợi chính. - Loose coupling - Centralized configuration - Easy testable. Bất lợi chính. Việc viết và thực thi DI sẽ là một cơn ác mộng nếu có quá nhiều Object và các phụ thuộc giữa chúng. Kiểu Dependency In

What's ViewState? How does use?

ViewState là gi? ViewState là một đặc tính có sẵn của ASP.NET. Nó được lưu ở client trong một hidden field có tên là "__VIEWSTATE". Nó cho phép bạn lưu data giữa các lần postback trên cùng một page. ViewState dựa vào dictionary collection. Tức là có key và value. Muốn lấy value thì ta dùng key. ViewState["Count"] = 1; int count; if (ViewState["Count"] != null) count = (int)ViewState["Count"]; Trên đây là một ví dụ đơn giản về cách dùng ViewState. Bạn có thể lưu vào một Object của bạn tạo ra với điều kiện bạn thêm vào một attribute như sau. [Serializable] public class Customer { public string FirstName; public string LastName; public Customer(string firstName, string lastName) { FirstName = firstName; LastName = lastName; } } //Khi gán vào ViewState. Customer cust = new Customer("Marsala", "Simons"); ViewState["CurrentCustomer"] = cust; //Khi lây ra. Customer cust; cust = (Customer)ViewState["CurrentCusto

Tông kết năm 2008!

Đầu năm 2008 tràn đầy hi vọng một năm "good". Giữa năm hi vọng cuối năm "good" hơn đầu năm. Cuối năm mong seo không bị "chết đói". Hết năm "mừng quá chưa chết đói". Năm mới hi vọng một năm "good" sẽ đến. Happy new year.