2011-08-25 26 views
5

Tôi đã cài đặt bảng thành viên ASP.NET vào cơ sở dữ liệu từ xa bằng cách sử dụng aspnet_regsql.exe. Dường như đã tạo thành công tất cả các bảng trong cơ sở dữ liệu mà tôi đã thấy được tạo trong quá khứ khi làm việc với công nghệ này. aspnet_regsql cũng nói rằng quá trình đã hoàn tất thành công.Nhà cung cấp thành viên ASP.NET, không được định cấu hình chính xác - không thể mở công cụ quản trị websit

Tôi có thể kết nối với cơ sở dữ liệu tốt với studio quản lý máy chủ sql và thực hiện truy vấn. Tôi đã thiết lập tệp web.config chứa các cài đặt có liên quan như được hiển thị bên dưới.


<connectionStrings> 
    <add name="ApplicationServices" connectionString="Data Source=**********;Initial Catalog=********;Integrated Security=false;User ID=*************;Password=******" providerName="System.Data.SqlClient" /> 
    </connectionStrings> 

<membership> 
     <providers> 
     <clear/> 
     <add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="ApplicationServices" 
      enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" 
      maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" 
      applicationName="/" /> 
     </providers> 
    </membership> 

    <profile> 
     <providers> 
     <clear/> 
     <add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="ApplicationServices" applicationName="/" /> 
     </providers> 
    </profile> 

    <roleManager enabled="false"> 
     <providers> 
     <clear/> 
     <add name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider" connectionStringName="ApplicationServices" applicationName="/" /> 
     <add name="AspNetWindowsTokenRoleProvider" type="System.Web.Security.WindowsTokenRoleProvider" applicationName="/" /> 
     </providers> 
    </roleManager> 

Tôi biết các kết nối với các công trình cơ sở dữ liệu. Chuỗi kết nối là chính xác. Tuy nhiên, khi tôi đi vào công cụ quản trị trang web để bắt đầu định cấu hình bảo mật, tôi nhận được thông báo lỗi:

Có vấn đề với kho dữ liệu đã chọn của bạn. Điều này có thể do tên máy chủ hoặc thông tin đăng nhập không hợp lệ hoặc do không đủ quyền. Nó cũng có thể được gây ra bởi tính năng quản lý vai trò không được kích hoạt. Nhấp vào nút bên dưới để được chuyển hướng đến trang nơi bạn có thể chọn một cửa hàng dữ liệu mới.

Thông báo sau có thể giúp chẩn đoán sự cố: Không thể tải loại 'PVN.Web.MvcApplication'.


Vì vậy, có, đây là ứng dụng MVC3 Tôi đang cố gắng xây dựng. Và tên của dự án ứng dụng web được gọi là PNV.Web, nhưng tôi không biết 'PVN.Web.MvcApplication' là gì.

Bất kỳ trợ giúp nào về điều này sẽ được đánh giá cao.

Cảm ơn

Trả lời

2

Vì vậy, có vẻ như vấn đề của tôi là người quản lý vai trò của tôi đã bị đặt thành sai.

<roleManager enabled="false"> 

Khi tôi đặt thành đúng, tôi có thể sử dụng công cụ định cấu hình Trang web mà không gặp sự cố và mọi thứ dường như bắt đầu hoạt động.

<roleManager enabled="true"> 
1

Bạn đã biên dịch ứng dụng trước khi thử sử dụng công cụ quản trị trang web? Nó sẽ không hoạt động trước khi trang web được biên soạn.

+0

Nếu biên dịch không hoạt động, hãy kiểm tra kỹ xem tệp đánh dấu "Global.asax" của bạn có tham chiếu "PVN.Web.MvcApplication" trong thuộc tính "Inherits" hay không. Đôi khi điều này không được cập nhật nếu bạn thay đổi không gian tên sau khi tạo dự án của bạn. –

1

tên ứng dụng của bạn không được thiết lập:

applicationName="/" /> 

Đặt tên ứng dụng và chắc chắn rằng nó phù hợp với cái tên trong bảng ứng dụng trong cơ sở dữ liệu của bạn. Chúc may mắn.

0

Nhà cung cấp tư cách thành viên mặc định của tôi đã làm việc, nhưng tôi đã thay đổi tên của ứng dụng trong bảng aspnet_Applications. Nếu bạn làm điều đó, bạn cũng cần thay đổi applicationName trong web.config.

Các vấn đề liên quan