Azure Function Apps: Kết nối SQL Server

Trong bài viết này, mình sẽ hướng dẫn các bạn cách kết nối SQL Server khi sử dụng Azure Function App trong Visual Studio

Tạo Project Azure Function Apps

Trong Visual Studio, bạn tạo mới project Azure Function Apps
Chọn Azure Functions 1 (Net Framework) => HttpTrigger. Hiện tại với Azure Functions 2 (preview), mình chưa kết nối thành công với SQL Server

 Bạn bấm Ok để tạo Project mới.

Thêm JWT Bearer vào Swagger UI trong ASP.NET Core 2.1

Trong bài viết này, mình sẽ hướng dẫn các bạn tích hợp Swagger UI vào project ASP.NET Core 2.1

Swagger UI là gì?

Swagger UI là tập hợp các file HTML, Javascrpt, và CSS để tự động tạo tài liệu từ API tương thích với Swagger. Các bạn có thể tham khảo them Swagger từ địa chỉ: https://swagger.io

Setup Swagger UI trong ASP.NET Core

Bài viết này chỉ tập trung về Swagger UI, nên sẽ đi qua nhanh phần setup token sử dụng IdentityServer 4. Mọi người có thể tìm hiểu thêm về IdentityServer 4 ở link sau: https://nhatkyhoctap.blogspot.com/2017/08/tim-hieu-ve-identityserver-4.html

Làm quen với Logic Apps

Logic Apps giúp bạn xây dựng, lập lịch và tự động hóa workflows để bạn có thể tích hợp apps, data, systems, và các dịch vụ với nhau, bất kể nó nằm trên cloud hay on premises. Để làm quen với logic app, trong bài này, mình sẽ hướng dẫn các bạn tạo 1 logic app đơn giản để lấy copy data từ database 1 sang database 2.
Trong bài hướng dẫn này, bạn sẽ:
  • Tạo 1 logic app rỗng
  • Dùng Time Trigger để copy data từ stored procedure sp_GetPeople, sau đó push data vào Service Bus.
  • Dùng 1 LA khác để nhận message từ Service Bus, sau đó đưa vào database 2.

Trước khi đi vào ví dụ, bạn cần làm quen với 1 số khái niệm:
  • Workflow là 1 giao diện đồ họa bao gồm các step trong business process. được bắt đầu từ 1 event “trigger”.
  • Trigger là 1 sự kiện để bắt đầu 1 workflow dựa trên 1 số sự kiện đặc biệt như 1 record được insert vào database, time trigger, hoặc đơn giản là có 1 message được thêm vào queue…
  • Parameters được dùng để lưu lại các giá trị trong workflow.
  • Connectors được định nghĩa dùng để kết nối các process.
  • Action là các bước được thêm vào sau trigger.

Tìm hiểu về reflection trong .NET

Trong bài viết này, chúng ta sẽ đi qua 3 phần chính: Assembly, Reflection, và cách thực thi 1 phương thức trong reflection.

Assembly

Assembly là một thư viện gồm các đoạn code đã được dịch sẵn, do đó có thể chạy được bởi nhiều chương trình khác. Các chương trình khác chỉ cần bổ sung thư viện này và gọi các hàm trong thư viện, các hàm sẽ chạy ngay (do đã được dịch sẵn) mà không cần bộ dịch ngôn ngữ tương ứng và người viết chương trình cũng không cần tốn công viết lại các hàm đó nữa.
Một vài Properties trong Assembly

Build và Deploy ASP.NET Applicaiton lên Azure Web App bằng Visual Studio Online

Trong bài viết này, mình sẽ hướng dẫn các bạn cách build 1 project đơn giản trên VSO và thực hiện deploy trên Azure. Quá trình đó gọi là CI và CD
  • CI là quy trình tự động build (và chạy test nếu có) ngay khi code bạn được commit hoặc check in lên project repository trên source control team bạn. Cho phép bạn nhận được các feedback tức thì về việc code bạn có khả thi khi build và sẵn sàng để deploy chưa.
  • CD là quy trình tự động chạy deploy khi có build mới thành công.
  • Kết hợp lại với việc sử dụng CI và CD khi có sự thay đổi code trên repository khi hoàn tất commit hoặc check, code của bạn sẽ được nhanh chóng được kiểm tra, build và tự động deploy lên server test, live web site, hoặc bất cứ nơi nào bạn muốn.

Một số lệnh trong Git

Một số lệnh thường dùng trong GIT

Tạo mới và thêm code 

Thêm mới Clone 1 project về:
git clone /<repository-path>/repository/
Trường hợp bạn cần kết nối tới Repository:
git remote add origin <git-remote-url>
tạo một nhánh mới và đặt tên là "feature_x" và chuyển qua nhánh đó (từ master) bằng cách
git checkout -b feature_x
Trở lại nhánh master
git checkout master
và xóa nhánh feature_x đó lần nửa
git branch -d feature_x
Commit và push code mới lên
git init
git add .
git commit -m "Initial commit"
git remote add origin https://YOURPROJECT.visualstudio.com/_git/
git push -u origin --all

Cài đặt Service Bus Explorer

Bạn vào trang https://github.com/paolosalvatori/ServiceBusExplorer/blob/develop/docs/documentation.md để xem hướng dẫn cài đặt.
Hoặc bạn có thể làm theo cách sau:

Cài đặt Chocolatey

Vào trang: https://chocolatey.org/install#installing-chocolate
Bạn copy dòng lệnh
@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
Mở cmd lên bằng chế độ Administrator, sau đó thực hiện dòng lệnh đã copy để cài đặt Chocolately.
Thực hiện dòng lệnh sau để cài đặt Service Bus Explorer
chocolatey install ServiceBusExplorer

Khởi động Service Bus Explorer

Trong command line, gõ ServiceBusExplorer, nhấn Enter.
Đợi trong giây lát, Azure Service Bus sẽ được mở.
Chúc các bạn thành công

Azure Functions: Tạo và debug project trong Visual Studio (Part 2)

Trong bài viết này, mình sẽ hướng dẫn các bạn các tạo Project Function App trong Visual Studio và thực hiện việc debug.

Tạo Project Azure Function trong Visual Studio

Trong Visual Studio:
  • Tạo project bằng cách chọn File > New > Project.
  • Chọn Visual C# > Cloud > Azure Functions.
  • Nhấp OK.

Chọn Http trigger.

Lưu ý: Ở thời điểm hiện tại, Function app được tạo bằng Visual Studio sẽ có cấu trúc hơi khác với project được tạo ở Azure Portal.

Azure Function: Tạo một function app đơn giản

Giả sử bạn có 1 web app và muốn thực hiện chạy background. Bạn có thể sử dụng Background Task libraries, WebJobs, hoặc Windows Services. Ngoài ra có 1 giải pháp khác là sử dụng Azure Functions. Vậy Azure Functions app là gì? Chúng ta sẽ đi từng bài viết để tìm hiểu về chúng.
Trong bài viết này, mình sẽ hướng dẫn bạn tạo 1 Function app đơn giản trên Azure portal.

Azure Function app là gì?

Azure Functions là 1 giải pháp để thực hiện dễ dàng những đoạn code nhỏ, hoặc “functions” trên cloud. Bạn không cần quan tâm đến đến các thành phần khác như ngôn ngữ, hạ tầng, hoặc server. Vì Azure Functioin hỗ trợ nhiều ngôn ngữ lập trình như C#, F#, Node.js, Java, hoặc PHP. Bạn có thể deploy lên server Azure có sẵn hoặc trả tiền dựa vào số lần gọi tới Azure Function.