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

Bài đăng

Đang hiển thị bài đăng từ Tháng 12, 2019

Tạo project ASP.NET Core 3 với SQLite

Trong bài viết này, mình sẽ hướng dẫn các bạn cách cài đặt SQLite và tạo project ASP.NET Core 3, sử dụng SQLite thay vì SQL Server. Cài đặt SQLite Download SQLite: https://www.sqlite.org/download.html SQLite cung cấp các công cụ khác nhau để làm việc trên các nền tảng, ví dụ: Windows, Linux và Mac. Bạn cần chọn một phiên bản phù hợp để tải về.

Identity Server 4: Một số update configuration cho .NET Core 3.x

Trong bài viết này, mình sẽ update lại một số config cho Identity Server khi sử dụng .NET Core 3 dựa trên grant type Resource Owner Password Credentials. Các bạn có thể tham khảo cách thiết lập Identity Server ở các bài viết trước của mình: https://nhatkyhoctap.blogspot.com/2017/08/tim-hieu-ve-identityserver-4.html https://nhatkyhoctap.blogspot.com/2017/08/identity-server-4-bao-ve-web-api-bang.html Đăng ký Self-sign certificate trong môi trường dev Authorization Server sẽ mã hóa token bằng key. Resource Server xác minh rằng tính toàn vẹn của mã thông báo bằng một khóa. Chúng cùng nhau tạo thành một cặp khóa bất đối xứng (ví dụ: public/private). Theo mặc định, IdentityServer sẽ xuất bản public key để xác minh mã thông báo trên điểm cuối /.well- Unknown / openid-configuration.

Automated UI tests với Selenium trong .NET Core

Trong bài viết này, mình sẽ hướng dẫn bạn tạo Project .NET Core với Selenium. Tạo project .NET Core Đầu tiên, bạn tạo mới 1 project MSTest Test Project (.NET Core) và đặt tên là SeleniumTutorial.AutomatedUiTest

Resource Owner Password Credentials

Trong bài viết này, mình chủ yếu collect lại thông tin về grant type Resource Owner Password Credentials Các loại grant type OAuth2 có 4 loại grant type: Resource Owner Password Credentials Authorization Code Implicit Client Credentials Resource Owner Password Credentials là gì? The Password grant type is a way to exchange a user's credentials for an access token. Khi nào thì sử dụng grant này? Chỉ nên sử dụng cho những ứng dụng thực sự được tin tưởng vì nó trực tiếp xử lý thông tin đăng nhập của người dùng. The flow includes the following steps: Ứng dụng đưa ra một form cho phép người dùng nhập thông tin đăng nhập (ví dụ: username/password). Ứng dụng gửi thông tin đăng nhập cùng thông tin định danh của mình lên authorization server. Authorization server xác thực thông tin, trả lại access token và refresh token (nếu có). Ứng dụng sử dụng access token truy cập tài nguyên trên resource server.

Làm quen với SpecFlow+

Trong bài viết này, mình chỉ tổng hợp các bước để hiểu sơ lược về SpecFlow, và các bước để tạo 1 project .NET Core để thực thi SpecFlow. Với góc độ của 1 .NET programmer, mình chỉ mong muốn đây là bài tổng hợp thật rõ ràng và đơn giản. Đầu tiên bạn cần nắm các khái niệm về TDD, BDD, và đây là nền tảng cơ sở để bắt đầu làm việc với SpecFlow, 1 .NET framework thực thi BDD, dựa trên ngôn ngữ C# và Gherkin. TDD là gì TDD (Test Driven Development) là một phương thức làm việc, hay một quy trình viết mã hiện đại. Lập trình viên sẽ thực hiện thông qua các bước nhỏ (BabyStep) và tiến độ được đảm bảo liên tục bằng cách viết và chạy các bài test tự động (automated tests). Quá trình lập trình trong TDD cực kỳ chú trọng vào các bước liên tục sau: Viết 1 test cho hàm mới. Đảm bảo rằng test sẽ fail. Chuyển qua viết code sơ khai nhất cho hàm đó để test có thể pass. Tối ưu hóa đoạn code của hàm vừa viết sao cho đảm bảo test vẫn pass và tối ưu nhất cho việc lập trình kế tiếp Lặp lại cho cá

Hỗ trợ search tiếng Việt trong SQL Server

Hôm nay mình hướng dẫn mọi người thủ thuật tìm kiếm với Sql Server không phân biệt chữ hoa, chữ thường, có dấu, không dấu rất đơn giản. Mặc định khi tạo 1 column có kiểu dữ liệu nvarchar, thì Collation sẽ có giá trị  SQL_Latin1_General_CP1_CI_AS . Giải thích: SQL – Tất cả các collation đều có tiền tố là SQL. Latin1_General – đại diện cho quy tắc sắp xếp, CI có nghĩa là không phân biệt chữ hoa chữ thường và AS có nghĩa là trọng âm. Để biết được SQL Server của bạn đang hỗ trợ collation nào, bạn thực hiện câu lệnh: SELECT SERVERPROPERTY('collation') Liệt kê collation của các column trong 1 table sp_help <table-name> Đối với tiếng Anh, thì bạn sẽ không gặp vấn đề gì. Nhưng với tiếng Việt, thì bạn sẽ gặp vấn đề về dấu. VD: Bạn tìm kiếm chữ "Châu". Nếu bạn gõ chữ "Châu" hay "Chau" thì sẽ ra 2 kết quả tìm kiếm khác nhau. Khắc phục Bạn execute câu lệnh sql sau: ALTER TABLE <table-name> ALTER COLUMN <column-name> nvar