Chủ Nhật, 16 tháng 1, 2011

Hôm nay, mình sẽ hướng dẫn các bạn cách tạo kết nối Sql Server cho ứng dụng của mình khi mang sang máy khác sử dụng mà mất thông số kết nối.

- Đầu tiên, bạn tạo 1 file text chứa thông tin kết nối, file text đó có nội dung như sau:

Server:
Database:
UserName:
Password:

Các giá trị ban đầu để trống. Mình đặt tên file là ConnectString.con

- Tiếp theo, bạn tạo 1 class tên là Helper.cs với nội dung như sau:


using System.Data.SqlClient;
using System.IO;

namespace iloveit1208_ConnectSQLServer
{
class Helper
{
public string Server{ get; set; }
public string Database { get; set; }
public string UserName { get; set; }
public string Password { get; set; }

public Helper()
{
StreamReader reader=new StreamReader("ConnectString.con");
this.Server = reader.ReadLine().Split(':')[1];
this.Database = reader.ReadLine().Split(':')[1];
this.UserName = reader.ReadLine().Split(':')[1];
this.Password = reader.ReadLine().Split(':')[1];
reader.Close();
}
public SqlConnection GetConnect()
{
if (this.UserName!="")
return new SqlConnection("Data Source=" + this.Server + ";Initial Catalog=" + this.Database + ";User Id=" + this.UserName + ";Password=" + this.Password + ";");
else
return new SqlConnection("Data Source=" + this.Server + ";Initial Catalog=" + this.Database + ";Integrated Security=True");
}
public static void WriteFile(string server,string data,string uid,string pass)
{
StreamWriter writer = new StreamWriter("ConnectString.con");
writer.WriteLine("Server:"+server);
writer.WriteLine("Database:"+data);
writer.WriteLine("UserName:" + uid);
writer.WriteLine("PassWord:" + pass);
writer.Close();
}
}
}

Chức năng của class này là cung cấp các phương thức đọc và ghi vào file ConnectString.con

- Tiếp theo bạn tạo 1 form kết nối như hình sau:

1

Form này sẽ tự động hiện lên cho bạn cấu hình kết nối SqlServer khi mất kết nối (trường hợp chuyển sang máy khác).

Code cho từng nút bạn có thể xem ở Project đính kèm.

- Tạo 1 form chính cho chương trình, mình làm đơn giản chỉ có một nút kiểm tra kết nối.

2

Trong sự kiện formload, bạn phải kiểm tra xem kết nối tới máy chủ có thành công hay không, nếu thất bại thì formconnection sẽ được hiện lên để cấu hình lại kết nối.


private void Form1_Load(object sender, EventArgs e)
{
try
{
Helper h = new Helper();
SqlConnection con = h.GetConnect();
con.Open();
con.Close();
}
catch (Exception)
{
frmConnection f=new frmConnection();
f.ShowDialog();
}
}

Nguyên lý chỉ đơn giản vậy thôi, mình sẽ đính kèm project ở dưới nếu bạn không hiểu đoạn code này thì reply lại mình sẽ giải thích kĩ càng.

Link download Project: Download

Chúc các bạn thành công.

Related Posts:

  • Script backup toàn bộ databases trong SQL ServerMáy chủ của bạn có khoảng 100 database. Bạn muốn backup toàn bộ số database này ? Bạn hoàn toàn có thể sử dụng tool backup của SQL Server Management Studio nhưng sẽ rất mất nhiều thời gian cũng như chán nản. Thay vào đó b… Read More
  • Sử Dụng Delegate Để Truyền Giá Trị Giữa Các Form Delegate là gì? Nó có nghĩa là “ủy quyền”, hay là “ủy thác” nó tựa tựa như là con trỏ hàm trong C/C++ vậy. -Cách làm này: -Ta sẽ tạo 2 form A ,B +A có 1 label để hiện thị chuỗi nhập vào từ form… Read More
  • Vì sao nên tránh viết SQL code trong ứng dụng Trong ứng dụng khi cần tương tác với database, có lẽ một cách làm rất phổ biến là tạo lập một chuỗi chứa lệnh SQL, ghép các giá trị  nhập vào của người dùng thành một lệnh SQL hoàn chỉnh, rồi thực hiện chuỗi lệnh SQL… Read More
  • Cách tạo crystal report thật đơn giảnNhiều bạn có mail cho mình hỏi cách làm crystal report. hôm nay, mình làm một tut hướng dẫn các bạn cách làm với bộ thư viện mình mới viết. Hi vọng sẽ giúp ích cho các bạn.Video Download: http://www.mediafire.com/?yug89zd2heq… Read More
  • Multi Thread trong C# Bạn có thể hiểu đơn giản thread là luồng dữ liệu. Thông thường 1 ứng dụng được tạo ra thường là đơn thread. Đôi khi bạn cần xử lý 1 công việc nào đó được lập đi lại nhiều lần trong 1 thời điểm, hoặc cùng 1 lúc bạn thực hi… Read More

0 nhận xét:

Đăng nhận xét

Categories

Sample Text

Được tạo bởi Blogger.

Must Read

Biểu mẫu liên hệ

Tên

Email *

Thông báo *

Popular Posts

Video

Popular Posts

Our Facebook Page