Tutorial: Creating Login Form using C# and WCF
WCF (Windows Communication Foundation) là công nghệ mới nhất được thiết kế theo kiến trúc hướng dịch vụ (Service Oriented Architecture – SOA). Mục đích của WCF là tạo một công nghệ thống nhất cho các công nghệ giao tiếp trước đây như: Web Services, .NET Remoting, Microsoft Message Queuing và COM+.
Ba thành phần chính của một WCF service là:
- Service class: định nghĩa các contact (sẽ trình bày ở bên dưới).
- Hosting environment: WCF service có thể được host lên nhiều “môi trường” khác nhau, bao gồm IIS, Windows service, Selt-hosting.
- End point: Các “cổng” kết nối giữa client và service
Trong chương trình đào tạo Lập trình viên Quốc tế ACCP i11 của APTECH môn học Lập trình ứng dụng doanh nghiệp (Enterprise Application Programming) được giảng dạy ở Học kỳ 3 theo giáo trình Microsoft - MOC #6461A Windows Communication Foundation
Trong bài viết này, chúng tôi sẽ hướng dẫn các bạn cách tạo một form đăng nhập viết bằng ngôn ngữ C# sử dụng WCF với CSDL được tạo trong SQL Server.
Đầu tiên, trong SQL Server, bạn tạo cơ sở dữ liệu có tên LoginForm chứa bảng lưu thông tin người dùng đặt tên là Account như sau:
2. Tiếp theo, bạn tạo một Project mới đặt tên là LoginForm trong Visual Studio 2008 SP1.
3. Thêm một WCF service mới có tên Test_Login vào Project Lab1
4. Đổi tên file IService1.cs thành ILogin_service.cs
5. Xóa các đoạn mã tự tạo trong file ILogin_service.cs và thay bằng đoạn code sau:
namespace Test_Login
{
[ServiceContract]
public Interface ILoginService
{
[OperationContract]
bool Check_Login(string uid, string pwd)
}
[Data Contract]
public class LoginInformation
{
[Data Member]
public string uid
{ get; set;}
[Data Member]
public string pwd
{ get; set;}
}
6. Đổi tên file Service1.cs thành Login_Service.cs
7. Xóa code được tạo sẵn trong file Login_Service.cs
8. Thêm một
LINQ to SQL class vào
Test_Login
9. Kéo thả bảng Account vào DataClasses1.dbml
10. Thêm phương thức Check_Login vào file LoginService.cs như sau:
namespace=Test_Login
{
public class LoginService : ILoginService
{
public bool Check_Login(string uid, string pwd)
{
try
{
DataClasses1DataContext aptech = new DataClasses1DataContext();
var message = from t in aptech.Account
where t.user_id == uid && t.password == pwd
select t;
if(message.Count > 0)
{
return true;
}
else
{
return false;
}
}
catch (Exception ex)
{
throw ex;
}
}
10. Thiết lập
Test_Login là
Start Up Project
11. Debug
12.
Add Service Reference to Lab1 solution
13.Now write code for Login button in Default.aspx file as follows:
using System;
using System.Collection.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace Lab1
{
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load (object sender, EvenArgs e)
{
}
protected void btn1_Clisk (object sender, EvenArgs e)
{
Proxy.LoginServiceClient ck_login = new Lab1.Proxy.LoginServiceClient();
bool result = ck_login.Check_lOgin(textBox1.Text.Trim();textBox1.Text.Trim());
if(result == true)
{
error.Texr = "Login successfully";
}
else
{
error.Texr = "Login Failed";
}
}
}
}
14.Finally, set Lab1 as StartUp Project and Default.aspx as Start Page then Debug.
[Nghean-Aptech]
Các tin mới hơn:
Hướng dẫn tích hợp giao diện trang quản trị SB Admin 2 vào Laravel 5.8.
Hướng dẫn tích hợp Google ReCaptcha v2 vào Laravel bằng curl.
Học lập trình React JS trong vòng 5 phút.
Sử dụng trình soạn thảo CKeditor tích hợp CKFinder với Laravel.
Hướng dẫn cài đặt Apache, PHP, MySQL, PHPMyAdmin trên Windows 10 và cấu hình SendMail.
Các tin cũ hơn:
Các phím tắt khi lập trình Java, Android trong Eclipse.
Giới thiệu ngôn ngữ lập trình Python.
PHP 7: 10 điều bạn cần biết.
Giải mã về 3 loại lập trình web: Front-End, Back-End và Full Stack.
Thủ thuật giúp Android 5.0 Lollipop hoạt động dễ dàng trên PC.