Thứ Ba, 22 tháng 9, 2015
Chủ Nhật, 20 tháng 9, 2015
Thứ Năm, 17 tháng 9, 2015
Sơ đồ cấu trúc thư mục trên Linux
07:24
No comments
Nếu như từ trước đến giờ bạn chỉ làm việc quen thuộc trên môi trường Window với các khái niệm ổ đĩa: ổ C chứa hệ điều hành, ổ D dùng lưu dữ liệu,…và khi bạn chuyển qua sử dụng các HĐH (hệ điều hành) Linux bạn sẽ bị lúng túng, phân vân về cấu trúc thư mục trên HĐH linux. Vì trên Linux không có khái niệm ổ C, ổ D mà chỉ có /dev/sda , /dev/sdb hay /dev/sdb1 ,…Bản khi tôi cũng bị lúng túng khi lần đầu tiên trải nghiệm HĐH CentOS, không hiểu tạo / (root), /boot, /usr để làm gì?. Nhưng khi bạn đi sâu vào tìm hiểu thì sẽ thấy nó rất thú vị. Vì thế hôm nay tôi sẽ giới thiệu tổng quan về Sơ đồ cấu trúc thư mục trên hệ thống Linux, cũng như vai trò và nhiệm vụ của từng thư mục.
hình 1: Cấu trúc thư mục trên Linux
1. / – Root
- Mỗi một file và thư mục điều bắt đầu từ root directory
- Chỉ có user root có quyền trên các thư mục ở cấp bên dưới
- Còn /root là home directory của user root
- Chỉ có user root có quyền trên các thư mục ở cấp bên dưới
- Còn /root là home directory của user root
2. /bin – User Binaries
- Chứa file thực thi dạng binary
- Các lệnh sử dụng thông thường trong linux được sử dụng single-user mode được đặt dưới cấu trúc thư mục này
- Các câu lệnh được sử dụng bởi tất cả các user trong hệ thống sẽ được đặt trong đây. Ví dụ một số lệnh như ps, ls, ping, grep, cp,…
- Các lệnh sử dụng thông thường trong linux được sử dụng single-user mode được đặt dưới cấu trúc thư mục này
- Các câu lệnh được sử dụng bởi tất cả các user trong hệ thống sẽ được đặt trong đây. Ví dụ một số lệnh như ps, ls, ping, grep, cp,…
3. /sbin – System Binaries
- Giống như /bin, bên trong /sbin cũng chứa đựng các file thực thi dạng binary. Các lệnh bên trong /sbin thường được sử dụng bởi system administrator và dùng cho các mục đích là duy trì quản trị hệ thống.
- Một số lệnh trong đây ví dụ như iptables, reboot, ifconfig…
- Một số lệnh trong đây ví dụ như iptables, reboot, ifconfig…
4. /etc – Configuration Files
- Thông thường ở /etc sẽ chứa file cấu hình cho các chương trình hoạt động
- Ở /etc cũng thường chứa các scripts dùng để start, stop, kiểm tra status cho các chương trình.
- Ví dụ /etc/resolv.conf (cấu hình dns-server ), hay /etc/network dùng để quản lý dịch vụ network
- Ở /etc cũng thường chứa các scripts dùng để start, stop, kiểm tra status cho các chương trình.
- Ví dụ /etc/resolv.conf (cấu hình dns-server ), hay /etc/network dùng để quản lý dịch vụ network
5. /dev – Device Files
- Chứa các file device để đại diện các hardware
- Ví dụ /dev/tty1 hay /dev/sda
- Ví dụ /dev/tty1 hay /dev/sda
6. /proc – Process Information
- Chứa đựng thông tin về quá trình xử lý của hệ thống
- Đây là một pseudo filesystem chứa đựng các thông tin về các process đang chạy
- Đây là một virtual filesystem chứa đựng các thông tin tài nguyên hệ thống. Ví dụ: /proc/cpuinfo cung cấp cho ta thông số kỹ thuật của CPU
- Đây là một pseudo filesystem chứa đựng các thông tin về các process đang chạy
- Đây là một virtual filesystem chứa đựng các thông tin tài nguyên hệ thống. Ví dụ: /proc/cpuinfo cung cấp cho ta thông số kỹ thuật của CPU
7. /var – Variable Files
- Chứa đựng các file có sự thay đổi trong quá trình hoạt động của hệ điều hành
- Ví dụ system log sẽ được đặt tại vị trí này
+ System log file /var/log
+ database file /var/lib
+ email /var/mail
+ Các print queue /var/spool
+ lock file /var/lock
+ Các file tạm thời cần cho quá trình reboot /var/tmp
- Ví dụ system log sẽ được đặt tại vị trí này
+ System log file /var/log
+ database file /var/lib
+ email /var/mail
+ Các print queue /var/spool
+ lock file /var/lock
+ Các file tạm thời cần cho quá trình reboot /var/tmp
8. /tmp – Temporary Files
- Thư mục này chứa các file được tạo ra bởi hệ thống và user
- Các file bên dưới thư mục này được xóa đi khi hệ thống reboot
- Các file bên dưới thư mục này được xóa đi khi hệ thống reboot
9. /usr – User Programs
- Chứa các file binary, library, tài liệu, source-code cho các chương trình
- /usr/bin chứa file binary cho các chương trình của user. Nếu như một user trong quá trình thực thi một lệnh ban đầu sẽ tìm kiếm trong /bin, nếu như không có thì sẽ tiếp tục nhìn vào /usr/bin. Ví dụ một số lệnh như at. awk, cc…
- /usr/sbin chứa các file binary cho system administrator. Nếu như ta không tìm thấy các file system binary bên dưới/sbin thì ta có thể tìm ở trong /usr/sbin. Ví dụ một số lệnh như cron, sshd, useradd, userdel
- /usr/lib chứa các file libraries cho /usr/bin và /usr/sbin
- /usr/local dùng để chứa chương trình của các user, các chương trình này được cài đặt từ source. Ví dụ khi tainstall apache từ source thì nó sẽ nằm ở vị trí là /usr/local/apache2
- /usr/bin chứa file binary cho các chương trình của user. Nếu như một user trong quá trình thực thi một lệnh ban đầu sẽ tìm kiếm trong /bin, nếu như không có thì sẽ tiếp tục nhìn vào /usr/bin. Ví dụ một số lệnh như at. awk, cc…
- /usr/sbin chứa các file binary cho system administrator. Nếu như ta không tìm thấy các file system binary bên dưới/sbin thì ta có thể tìm ở trong /usr/sbin. Ví dụ một số lệnh như cron, sshd, useradd, userdel
- /usr/lib chứa các file libraries cho /usr/bin và /usr/sbin
- /usr/local dùng để chứa chương trình của các user, các chương trình này được cài đặt từ source. Ví dụ khi tainstall apache từ source thì nó sẽ nằm ở vị trí là /usr/local/apache2
10. /home – Home Directories
- Home directory được chứa đựng thông tin cá nhân của các user
- Ví dụ /home/athena , /home/student
- Ví dụ /home/athena , /home/student
11. /boot – Boot Loader Files
- Chứa đựng boot loader và các file cần cho quá trình boot tùy theo các phiên bản của kernel
- Các file Kernel initrd, vmlinux, grub được đặt bên dưới /boot
- Ví dụ initrd.img-2.6.32-24-generic, vmlinuz-2.6.32-24-generic
- Các file Kernel initrd, vmlinux, grub được đặt bên dưới /boot
- Ví dụ initrd.img-2.6.32-24-generic, vmlinuz-2.6.32-24-generic
12. /lib – System Libraries
- Chứa các file library hỗ trợ cho các file thực binary nằm bên dưới /bin và /sbin
- Tên của các file library thường là ld* or lib*.so.* . Ví dụ như ld-2.11.1.so, libncurses.so.5.7
- Tên của các file library thường là ld* or lib*.so.* . Ví dụ như ld-2.11.1.so, libncurses.so.5.7
13. /opt – Optional add-on Applications
- opt đại diện cho optional
- Chứa đựng các chương trình thêm vào của các hãng khác
- Chứa đựng các chương trình thêm vào của các hãng khác
14. /mnt – Mount Directory
- Chứa các thư mục dùng để system admin thực hiện quá trình mount
15. /media – Removable Media Devices
- Chứa thư mục dùng để mount cho các thiết bị removable. Ví dụ như CDROM, Floppy…
16. /srv – Service Data
- srv đại diện cho service
- Chứa đựng các dịch vụ cho server, nó liên quan đến dữ liệu. Ví dụ /srv/cvs chứa đựng CVS
- Chứa đựng các dịch vụ cho server, nó liên quan đến dữ liệu. Ví dụ /srv/cvs chứa đựng CVS
Tổng hợp từ Internet.
Thứ Hai, 14 tháng 9, 2015
Thứ Tư, 9 tháng 9, 2015
[Windows Form] DevExpress - thư viện lập trình cho windows form với một số thủ thuật
06:02
No comments
DevExpress là 1 hệ thống thư viện lập trình cực hữu ích cho việc thiết kế, lập trình form 1 cách đơn giản, chuyên nghiệp.
DevExpress bao gồm rất nhiều Control (gần như có thể thay thế hoàn toàn các Control của .NET) và còn nhiều Control ghép, mở rộng mà .NET không có. Nó chứa từ các điều khiển cơ bản như TextEdit, Button, MessageBox, PictureBox, GridView... đến các điều khiển mở rộng, nâng cao như SearchLookupEdit, RibbonBar, SpreadSheet Control... Các điều khiển tích hợp nhiều chức năng, tùy chỉnh giúp người lập trình bớt phải code.
Điểm đặc biệt ở Dev là nó hỗ trợ nhiều Skin khác nhau, theo ý tôi thì chúng đều rất đẹp và nhìn có vẻ rất chuyên nghiệp, lập trình viên có thể để người dùng chọn Skin ngay trong khi chạy chương trình.
Vì nhiều tính năng như vậy nên bộ thư viện cũng khá là nặng và tốn thời gian khi chạy chương trình trong lần đầu load form.
Trang chủ: https://www.devexpress.com/
Download (cracked): Bản 13.1.4 (hiện nay đã có bản 13.2)
Sau đây tôi xin giới thiệu một số thủ thuật, cách sử dụng Dev hiệu quả hơn
I. Tạo form PreLoad cho form chính
Với 1 chương trình tương đối lớn, nhiều control cần load khi khởi tạo, chạy lần đầu thì việc phải đợi lâu, độ delay lớn sẽ gây cảm giác không tốt tới người dùng. Điều chúng ta có thể làm là thử tạo 1 form pre load cho main form. Tức là trong khi đang load form chính (tốn thời gian) thì ta cho hiển thị 1 form splash nhẹ hơn lên trước, sau khi form chính load xong thì form splash này mất đi. Trong form splash này có thể cho hiển thị tên phần mềm, copyright, progress bar... để người dùng không có cảm giác phải đợi lâu.
Để tạo được 1 from pre load ta làm theo các bước sau:
- Trong Project tạo 1 form DevExpress splashForm, ta sửa form này theo ý muốn ( như hình trên chẳng hạn)
- Trong form chính kéo 1 control "splashScreenManager" vào và đặt thuộc tính "ActiveSplashFormTypeInfo" cho nó là tên form splash vừa tạo ở trên. Có thể tùy chỉnh thêm 1 số tùy chọn.
Để thay đổi được cả giao diện ribbon và giao diện form phải cài đặt thuộc tính "RibbonStyle" của thành phẩn Ribbon Control là "Office2013".
Trong 1 RibbonPage > RibbonPageGroup nào đó bạn tạo 1 "RibbonGalleryBarItem", đặt tên cho nó (là rbiGallery chẳn hạn)
Trong phần code ta làm như sau:
Thêm nhiều skin hơn bằng cách sửa file "Program.cs", thêm đoạn sau vào:
Để tạo được 1 from pre load ta làm theo các bước sau:
- Trong Project tạo 1 form DevExpress splashForm, ta sửa form này theo ý muốn ( như hình trên chẳng hạn)
- Trong form chính kéo 1 control "splashScreenManager" vào và đặt thuộc tính "ActiveSplashFormTypeInfo" cho nó là tên form splash vừa tạo ở trên. Có thể tùy chỉnh thêm 1 số tùy chọn.
II. Áp dụng, thay đổi skin cho form
Thay đổi giao diện áp dụng với form Ribbon. Có nhiều skin như Office 2013, Win 7, Mac...Để thay đổi được cả giao diện ribbon và giao diện form phải cài đặt thuộc tính "RibbonStyle" của thành phẩn Ribbon Control là "Office2013".
Trong 1 RibbonPage > RibbonPageGroup nào đó bạn tạo 1 "RibbonGalleryBarItem", đặt tên cho nó (là rbiGallery chẳn hạn)
Trong phần code ta làm như sau:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | using DevExpress.Skins;using DevExpress.LookAndFeel;using DevExpress.XtraBars.Ribbon;using DevExpress.XtraBars.Ribbon.Gallery;////namespace ABC{ public partial class XYZ : DevExpress.XtraBars.Ribbon.RibbonForm { public XYZ() { InitializeComponent(); // Gallery Skin DevExpress.XtraBars.Helpers.SkinHelper.InitSkinGallery(rbiGallery, true); UserLookAndFeel.Default.SetSkinStyle("Default"); |
Thêm nhiều skin hơn bằng cách sửa file "Program.cs", thêm đoạn sau vào:
1 2 | DevExpress.UserSkins.BonusSkins.Register();DevExpress.Skins.SkinManager.EnableFormSkins(); |
III. Sử dụng MessageBox của DevExpress
Việc sửa giao diện cho form đã ổn, vấn đề là những MessageBox của .NET vẫn chưa được thay đổi và không đồng bộ với giao diện của form. Vậy làm sao để khắc phục?
Dev cũng hỗ trợ cả cái MessageBox này với tên "XtraMessageBox", việc sử dụng XtraMessageBox cũng giống hệt khi ta sử dụng MessageBox. Thuận tiện hơn nữa là MessageBox này cũng thay đổi giao diện khi ta thay đổi giao diện của form.
Sử dụng XtraMessageBox như sau:
Như vậy là phần lớn các Control của form đã có thể thay đổi, tùy chỉnh với Dev.
1 2 3 4 | using DevExpress.XtraEditors; // MessageBox////XtraMessageBox.Show("Có lưu file không?", "File chưa được lưu", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question); |
Như vậy là phần lớn các Control của form đã có thể thay đổi, tùy chỉnh với Dev.
Hướng dẫn chi tiết 4 cách nâng cấp lên Windows 10, cùng trải nghiệm nào!
05:17
No comments
Theo đúng lịch, ngày 29/7 vừa qua Microsoft đã chính thức tung ra Windows 10 tới tay người dùng cuối. Tuy nhiên, ngoài cách cập nhật lên miễn phí thì vẫn còn nhiều cách khác để bạn tận hưởng được hệ điều hành đầy mới mẻ, triển vọng này.
Đầu tiên bạn hãy đảm bảo máy tính đã đảm bảo đầy đủ tiêu chuẩn cùng các bước chuẩn bị sẵn sàng để nâng cấp. Bạn có thể tham khảo thêm bài viết >>>tại đây<<<.
Cách 1: Nâng cấp lên Windows 10 khi có thông báo
Khi máy bạn đã hội đủ điều kiện để nâng cấp lên Windows 10, bạn có thể đủng đỉnh ngồi chờ thông báo cập nhật vì Microsoft thực hiện chính sách nâng cấp lần lượt. Để biết máy bạn đã cận kề lúc được thông báo cập nhật hay chưa, bạn có thể kiểm tra bằng cách sau đây.
- Windows 7: Organize > Folder Options > tab View > kéo xuống phần Hidden files and folders > chọn mục Show hidden files, folders and drives.
- Windows 8.1: chọn tab View trên thanh Ribbon của Windows Explorer > ở phần Show/hide đánh dấu chọn mục Hidden items.
Sau đó, bạn truy cập vào ổ đĩa hệ thống trên máy mình (thường là ở đĩa C) và xem thấy thư mục mang tên \$Windows.~BT chưa. Nếu có rồi, bạn hãy yên tâm là máy đã bắt đầu tải file cài đặt Windows 10 và thông báo cập nhật cho máy bạn sớm thôi.
Cách 2: "Ép" Windows updates cập nhật lên Windows 10
Nếu làm theo cách 1 mà bạn không thấy thư mục \$Windows.~BT hoặc không muốn đợi chờ thông báo nâng cấp “trong vô vọng” nữa, bạn có thể “ép” Windows Updates thực hiện cài Windows 10 ngay bây giờ cho bạn.
- Bước 1: Mở Windows Update > chọn Check for updates. Nếu có xuất hiện bất kì bản cập nhật nào, bạn tiến hành cái đặt hết và khởi động lại máy theo yêu cầu. Cứ làm như vậy cho đến khi máy sẽ hiện một bản cập nhật nặng khoảng 2.700MB (tùy máy) thì đó đã là Windows 10 rồi đấy. Bạn chọn cài đặt và ngồi chờ hoàn thành là được.
- Bước 2: Nếu đã chọn Check for updates mà vẫn không có gì xảy ra, bạn có thể làm theo các bước “mạnh tay” hơn như sau.
- Mở Windows update > Change settings > đảm bảo đã chọn vào mục Install updates automatically (recommend) > nhấn OK.
- Bạn vào C:\Windows\SoftwareDistribution\Download và xóa mọi thứ đang có trong thư mực này.
- Trở lại Widows update > chọn Check for updates.
- Ngay sau đó, bạn nhấn Windows + R > gõ vào cmd > nhấn OK > gõ tiếp nội dung sau wuauclt.exe /updatenow.
Bằng cách này, Windows update trên máy bạn sẽ thôi “lề mề” để chờ tải hay cài đặt Windows 10 nữa.
Cách 3: Cập nhật hoặc tải bản cài đặt chính thức Windows 10 thông qua công cụ của Microsoft
Nếu không muốn chờ hoặc thấy chán với tốc độ download “rùa bò” của Windows update, bạn cũng có thể sử dụng công cụ Media Creation của chính Microsoft cung cấp để tải về Windows 10 “chính chủ”.
Bạn tải công cụ này về >>>tại đây (dành cho Windows 32-bit)<<< hoặc >>>tại đây (bản dành cho Windows 64-bit)<<<.
Cài đặt và mở công cụ này lên, màn hình ban đầu sẽ cho bạn hai lựa chọn là Upgrade this PC now (tải về và nâng cấp ngay lên Windows 10 cho bạn) và Create installation media for another PC (tải về bộ cài Windows 10 vào tạo bộ cài đặt trên đĩa DVD, USB, ổ cứng gắn ngoài cho bạn). Tùy theo nhu cầu mà bạn có lựa chọn phù hợp cho mình.
*Lưu ý: Nếu chọn Create installation media for another PC và tạo bộ cài đặt trên USB hoặc ổ cứng gắn ngoài thì toàn bộ dữ liệu trên đó sẽ bị xóa. Bạn nên sao lưu dữ liệu trên chúng qua nơi khác trước khi thực hiện.
Cách 4: Tải file ISO của Windows 10 về và tự cập nhật hoặc cài mới hoàn toàn
Cách này sẽ tiết kiệm thời gian tải Windows 10 về cho bạn vì sự trợ giúp của các trình download như Internet Download Manager sẽ nhanh hơn nhiều so với tốc độ của Windows update hay công cụ Media Creation.
Link tải về Windows 10 bản chính thức:
- Windows 10 (phiên bản Pro) bản 64-bit.
- Windows 10 (phiên bản Pro) bản 32-bit.
- Windows 10 (đa phiên bản) 32-bit.
- Windows 10 (đa phiên bản) 64-bit.
Sau khi đã tải về, bạn có thể tạo DVD cài đặt theo như cách truyền thống hoặc đưa bộ cài đặt lên USB hoặc ổ cứng gắn ngoài để cài đặt cho nhanh hơn.
*** Lưu ý: Đối với những bạn đang sử dụng Windows 8.1, Windows 8.1 Single Language, Windows 8.1 with Bing thì nên download bản Windows 10 đa phiên bản hoặc dùng cách thứ 3 ở bên trên để tránh tình trạng cài sai phiên bản dẫn tới mất bản quyền.
Windows 10 được coi là phiên bản giao hòa sự tinh túy, hấp dẫn nhất của cả Windows 7 và Windows 8, đồng thời đây cũng là cột mốc đánh dấu sự sáp nhập chung nhân với nền tảng di động Windows 10 Mobile sẽ đươc tung ra vào cuối năm.
Start Menu trên Windows 7 đã trở lại với các giao diện Live Tiles trên Windows 8
Cô nàng trợ lý ảo Cortana thông minh và rất hữu ích
Trung tâm thông báo chẳng thua gì các smartphone hiện nay
Windows 10 còn rất nhiều tính năng hay và mới lạ, đang chờ bạn nâng cấp lên và khám phá. Bạn đã lên Windows 10 chưa? Hãy chia sẻ cảm nghĩ và các kinh nghiệm sử dụng của mình về hệ điều hành mới đầy thú vị này nhé!
Theo www.thegioididong.com
Thứ Ba, 8 tháng 9, 2015
Phân trang trong ASP.NET với CollectionPager
22:27
No comments
Khi lập trình ứng dụng ASP.NET, để trình bày dữ liệu, chúng ta hay sử dụng các control như DataList hay Repater khá nhiều so với Gridview hay các control dữ liệu khác. Ưu điểm của những control trên thì khá rõ, tuy nhiên có hạn chế là nhiều bạn gặp khó khăn để phân trang dữ liệu cho nó. Vấn đề này đặc biệt quan trọng khi dữ liệu của các bạn nhiều lên như danh sách các sản phẩm, danh sách nhân viên…..
Thật may mắn khi ASP.NET hỗ trợ chúng ta viết các custom control khá mạnh, chính vì thế có một control hỗ trợ phân trang rất linh hoạt và hữu ích là CollectionPager. Nó cho phép chúng ta phân trang với DataList, Repater, hỗ trợ định dạng hiển thị mạnh mẽ…
Để sử dụng các bạn cần download thư viện CollectionPager về.
Đầu tiên cần add thư viện CollectionPager.dll vào thư mục bin của ứng dụng.
Phân trang trong ASP.NET với CollectionPager
Tạo trang mới Pager.aspx
Các bạn chú ý thêm dòng này vào đầu trang
1 | <%@ Register TagPrefix="cc1" Namespace="SiteUtils" Assembly="CollectionPager" %> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 | <!--/* FileName: Pager.aspx Project Name: AjaxDemo Date Created: 5/12/2015 8:49:08 PM Description: Auto-generated Version: 1.0.0.0 Author: Lê Thanh Tuấn - Khoa CNTT Author Email: tuanitpro@gmail.com Author Mobile: 0976060432 Author URI: http://tuanitpro.com License: */ --> <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Pager.aspx.cs" Inherits="Pager" %> <%@ Register TagPrefix="cc1" Namespace="SiteUtils" Assembly="CollectionPager" %> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title>Phân trang với ColelctionPager</title> </head> <body> <form id="form1" runat="server"> <div> <h1>Phân trang trong ASP.NET với CollectionPager</h1> <table> <thead> <tr> <th>StudentId</th> <th>Name</th> <th>Status</th> </tr> </thead> <tbody> <asp:Repeater ID="rptStudents" runat="server"> <ItemTemplate> <tr> <td><%#Eval("StudentId") %></td> <td><%#Eval("Name") %></td> <td> <%#Eval("Status") %></td> </tr> </ItemTemplate> </asp:Repeater> </tbody> <tfoot> <tr> <td colspan="3"> <cc1:CollectionPager ID="pager" runat="server" PageSize="20" ></cc1:CollectionPager> </td> </tr> </tfoot> </table> <hr /> <a href="http://tuanitpro.com">http://tuanitpro.com</a> </div> </form> </body> </html> |
Thêm dòng này vào sau DataList, Repater
1 | <cc1:CollectionPager ID="pager" runat="server" PageSize="20" ></cc1:CollectionPager> |
Các thuộc tinh của CollectionPager
Code trang Pager.aspx.cs
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 | /* FileName: Pager.aspx.cs Project Name: AjaxDemo Date Created: 5/12/2015 8:49:08 PM Description: Auto-generated Version: 1.0.0.0 Author: Lê Thanh Tuấn - Khoa CNTT Author Email: tuanitpro@gmail.com Author Mobile: 0976060432 Author URI: http://tuanitpro.com License: */ using System; using System.Data; using System.Data.SqlClient; public partial class Pager : System.Web.UI.Page { string connectionString = @"Data Source = .\SQLEXPRESS; Initial Catalog = DemoDI; User ID=sa; Password=sa"; // Code table Students string db = @"CREATE TABLE [dbo].[Students]( [StudentId] [int] IDENTITY(1,1) NOT NULL, [Name] [nvarchar](max) NULL, [Status] [nvarchar](max) NULL)"; /// <summary> /// Get All Student form DB /// </summary> /// <returns></returns> public DataTable GetAllStudents() { using (SqlConnection cnn = new SqlConnection(connectionString)) { cnn.Open(); string sql = "Select * from Students"; SqlCommand cmd = new SqlCommand(sql, cnn); DataTable table = new DataTable(); table.Load(cmd.ExecuteReader()); cnn.Close(); return table; } } protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { //Set DataSource of Pager to Sample Data pager.DataSource = GetAllStudents().DefaultView; pager.BindToControl = rptStudents; rptStudents.DataSource = pager.DataSourcePaged; } } } |
Kết quả
Phân trang ASP.NET với CollectionPager
Chúc các bạn thành công.
Suu tam TUANIT.COM
Đăng ký:
Nhận xét (Atom)





















