Hôm qua Mr. Thái có giới thiệu cách tạo cơ chế phân quyền trên Form bằng ASP.Net Website adminitration Tool. Nhưng một số máy bị lỗi Unable to connect to SQL Server Database:
Nguyên nhân:
Do Tool này lưu CSDL trên SQL Server 2005 nhưng máy tính chỉ có SQL Server 2008 --> xung đột.
Giải pháp 1:
Cho đĩa Visual Studio vào để cài đặt thêm SQL Server 2005 Express vào là ok:
Giải pháp 2:
Một số máy không thể dùng cách 1 được (như máy em chẳng hạn - không biết vì sao) nên ta phải chỉnh cho bộ Tool này chạy cùng SQL Server 2008 bằng cách:
Step 1: chạy file C:\Windows\Microsoft.Net\FrameWork\v2.0.xxxxx\aspnet_regsql.exe, màn hình hiện ra nhấn Next, đến bước Select a setup option chọn Configure SQL Server for application services, các bước tiếp theo cũng giống như login vào SQL Server trên máy của mình thôi
Khi hoàn tất, trong SQL Server sẽ có thêm 1 CSDL có tên aspnetdb như hình (đây là csdl hệ thống cho asp.net - đừng sửa đổi gì hết).
Step 2: mở file web.config trong project ASP.Net của bạn (file config trong thư mục gốc của project nhé). Nếu 1 dự án asp.net có nhiều project thì cũng phải làm tương tự cho tất cả các project:
* trong thẻ <ConnectionStrings> thêm vào đoạn code sau để tạo 1 connection đến csdl aspnetdb:
* Trong thẻ <system.web> thêm vào đoạn code sau để tool trên sử dụng connection này là mặc định:
Bước 3: giờ đã có thể truy cập vào thẻ security đc rồi đấy, enjoy thôi ^^
Nguyên nhân:
Do Tool này lưu CSDL trên SQL Server 2005 nhưng máy tính chỉ có SQL Server 2008 --> xung đột.
Giải pháp 1:
Cho đĩa Visual Studio vào để cài đặt thêm SQL Server 2005 Express vào là ok:
Giải pháp 2:
Một số máy không thể dùng cách 1 được (như máy em chẳng hạn - không biết vì sao) nên ta phải chỉnh cho bộ Tool này chạy cùng SQL Server 2008 bằng cách:
Step 1: chạy file C:\Windows\Microsoft.Net\FrameWork\v2.0.xxxxx\aspnet_regsql.exe, màn hình hiện ra nhấn Next, đến bước Select a setup option chọn Configure SQL Server for application services, các bước tiếp theo cũng giống như login vào SQL Server trên máy của mình thôi
Khi hoàn tất, trong SQL Server sẽ có thêm 1 CSDL có tên aspnetdb như hình (đây là csdl hệ thống cho asp.net - đừng sửa đổi gì hết).
Step 2: mở file web.config trong project ASP.Net của bạn (file config trong thư mục gốc của project nhé). Nếu 1 dự án asp.net có nhiều project thì cũng phải làm tương tự cho tất cả các project:
* trong thẻ <ConnectionStrings> thêm vào đoạn code sau để tạo 1 connection đến csdl aspnetdb:
- Code:
<add name="SQL2k8"
providerName="System.Data.SqlClient"
connectionString="Data Source=THANHDAT-PC;Initial Catalog=aspnetdb;User ID=sa;Password=thanhdat9" />
* Trong thẻ <system.web> thêm vào đoạn code sau để tool trên sử dụng connection này là mặc định:
- Code:
<membership defaultProvider="SQL2k8Provider">
<providers>
<add name="SQL2k8Provider"
type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
connectionStringName="SQL2k8" />
</providers>
</membership>
Bước 3: giờ đã có thể truy cập vào thẻ security đc rồi đấy, enjoy thôi ^^