2010-02-08 33 views
5

Tôi đang sử dụng bảo mật tùy chỉnh (không có nhà cung cấp thành viên). Sau khi người dùng đăng nhập ... một thư mục "App_Data" với ASPNETDB.MDF được tạo tự động ... trên máy cục bộ của tôi. Nếu tôi triển khai điều này đến một máy chủ từ xa, nó sẽ không hoạt động do các ràng buộc bảo mật trên App_Data.Asp.net mvc không thể hoạt động mà không có App_Data

Thậm chí nếu tôi xóa thư mục này và khởi động lại ứng dụng ... nó được tạo lại, mặc dù tôi đã xóa tất cả các tham chiếu đến nhà cung cấp Membership/Role/Profile ... Không có gì được sử dụng trong mã ... FormsAuthentication.

Điều này xảy ra như thế nào?

+0

Nó có thể là một thứ web.config không? Dữ liệu cấu hình có liên quan trông như thế nào? – ziya

+0

Tôi đã thêm web.config ... Tôi không nghĩ đó là vấn đề ở đây! –

+0

Bạn có sử dụng "Công cụ quản trị trang web" được tích hợp sẵn không? – mxmissile

Trả lời

1

Vẫn phải có một vị trí trong mã của bạn trong đó Tư cách thành viên/Vai trò/Hồ sơ-dịch vụ đang được sử dụng. Nếu nhà cung cấp không được chỉ định, Asp.Net sử dụng mặc định => để tạo tệp .mdf.

Làm cho nó không thể trong môi trường phát triển của bạn cho Asp.Net để tạo tệp .mdf: Ví dụ: loại bỏ tất cả các quyền từ App_Data đó, đặt vào một tệp văn bản và đổi tên nó thành ASPNETDB.MDF hoặc một cái gì đó tương tự ...

Bằng cách này, bạn sẽ gặp sự cố trong chế độ gỡ lỗi. Sau đó, bạn có thể thấy, dòng nào cố gắng sử dụng dịch vụ => mà sau đó sử dụng nhà cung cấp mặc định => tạo tệp DB.

+0

chào mừng trên tàu ... Tôi sẽ thử nó –

+0

Điều đó đã làm việc ... Tôi đã tìm thấy tham chiếu đến thành viên trong tập tin Global.asax bảo vệ void Application_AuthenticateRequest() { if (User! = Null) Tư cách thành viên .GetUser (đúng); } –

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