ADO.NET – Cơ bản về DataSet (Part 2/2): DataRelation và Constraint

[…]DataSet là một đối tượng có thể chứa nhiều DataTable cùng với mối liên hệ giữa chúng (relationship) và kể các ràng buộc (constraint) được lưu hoàn toàn trong bộ nhớ để làm việc offline. Qua bài viết này, bạn có thể hiểu cấu trúc của DataSet, DataTable cũng như nạp dữ liệu, tạo relation, constraint và thao tác dữ liệu trên các đối tượng dữ liệu này.[…]

Tiếp tục đọc

ADO.NET – Cơ bản về DataSet (Part 1/2): Cấu trúc của DataSet và DataTable

DataSet là một đối tượng có thể chứa nhiều DataTable cùng với mối liên hệ giữa chúng (relationship) và kể các ràng buộc (constraint) được lưu hoàn toàn trong bộ nhớ để làm việc offline. Qua bài viết này, bạn có thể hiểu cấu trúc của DataSet, DataTable cũng như nạp dữ liệu, tạo relation, constraint và thao tác dữ liệu trên các đối tượng dữ liệu này.

Tiếp tục đọc

WPF – Cơ bản về XAML trong WPF 4 – Part 2 of 2

[…] XAML (eXtensible Application Markup Language) là một ngôn ngữ  đánh dấu với cú pháp tương tự XML dùng để tạo các đối tượng .Net trong các ứng dụng WPF, Silverlight và WF. Mặc dù đây là những mảng đề tài lớn nhưng nếu bạn đã biết đến XML, sẽ không khó để làm quen với XAML. Trong bài này tôi sẽ trình bày các đặc điểm và chức năng cơ bản của XAML để giúp bạn tiếp cận với WPF từ mức đơn giản nhất. Nền tảng mà tôi sử dụng là .Net framework 4 cùng với C# 2010.[…]

Tiếp tục đọc

C# – Lập trình Socket giao tiếp TCP client/server

Trong lập trình, Socket là một API (Application Programming Interface) cung cấp các phương thức để giao tiếp thông qua mạng. Trước khi bắt đầu tìm hiểu và viết một ví dụ đơn giản về socket, bạn có thể tham khảo bài  viết “Networking – Một số khái niệm cơ bản“ để có cái nhìn sơ lược về những khái niệm cơ bản trong lập trình mạng.

Tiếp tục đọc

WPF – Cơ bản về XAML trong WPF 4 (Part 1 of 2)

XAML (eXtensible Application Markup Language) là một ngôn ngữ  đánh dấu với cú pháp tương tự XML dùng để tạo các đối tượng .Net trong các ứng dụng WPF, Silverlight và WF. Mặc dù đây là những mảng đề tài lớn nhưng nếu bạn đã biết đến XML, sẽ không khó để làm quen với XAML. Trong bài này tôi sẽ trình bày các đặc điểm và chức năng cơ bản của XAML để giúp bạn tiếp cận với WPF từ mức đơn giản nhất. Nền tảng mà tôi sử dụng là .Net framework 4 cùng với C# 2010.

Tiếp tục đọc

C# – Lập trình Thread với BackgroundWorker

BackgroundWorker là một component giúp cho việc lập trình Thread trở nên dễ dàng do các thuộc tính và event mà nó hỗ trợ sẵn. Trong bài viết này tôi sẽ giới thiệu cách sử dụng BackgroundWoker để làm một ví dụ tìm kiếm tập tin trong một dự án Windows Form. Qua đó bạn có thể thấy khả năng của đối tượng này và áp dụng vào những chương trình cụ thể.

Tiếp tục đọc

DLR– Dynamic Programming: Một wrapper của string với DynamicObject và reflection

Như đã giới thiệu trong bài “ExpandoObject, DynamicObject và Dynamic Method Bag“, để minh họa rõ ràng hơn cho cách sử dụng DynamicObject, tôi đã tạo một wrapper của lớp string với tên gọi Y2String trong C#. Lớp này sẽ override các phương thức cần thiết của DynamicObject để sử dụng được các phương thức của string và bổ sung thêm một số tính năng khác.

Tiếp tục đọc

LINQ – Deferred operator và cơ chế thực hiện truy vấn

Các toán tử (extension method) trong LINQ được chia thành hai loại theo cách mà chúng được thực thi: deferred và non-deferred. Việc hiểu mà phân biệt được các toán tử này là một vấn đề cần thiết vì bạn có thể nhận được một kết quả ngoài dự đoán khi sử dụng nếu không cẩn thận.

 

Tiếp tục đọc

DLR – Dynamic Programming: ExpandoObject, DynamicObject và Dynamic Method Bags

Trong bài giới thiệu về dynamic keyword, bạn đã thấy rằng dynamic programming giúp cho việc lập trình trở nên dễ dàng và tiện lợi hơn. Tuy nhiên không chỉ đơn giản là tự động xác định các kiểu dữ liệu, dynamic programming cho phép bạn tạo các thành viên của đối tượng và sử dụng chúng trong quá trình runtime.

Tiếp tục đọc