Tôi có một vài dự án MVC sử dụng SQL CE 4.0 và Entity Framework. Kể từ khi chuyển sang Visual Studio 2012 Tôi tiếp tục nhận được lỗi sau (không phải tất cả thời gian, nhưng thường xuyên)"LoaderLock đã được phát hiện" với Visual Studio 2012
LoaderLock được phát hiện
Cố gắng thực hiện quản lý bên trong khóa OS Loader. Không cố gắng chạy mã được quản lý bên trong một hàm DllMain hoặc khởi tạo hình ảnh vì làm như vậy có thể khiến ứng dụng bị treo.
Lỗi không xảy ra nếu tôi quay trở lại sử dụng VS 2010, điều này khiến tôi khá chắc chắn đó là vấn đề với Visual Studio chứ không phải mã của tôi, nhưng tôi muốn ai đó xác nhận điều đó cho tôi!
Sửa
Vấn đề dường như luôn xảy ra khi phương thức Dispose() của dbcontext được gọi. Đây là một ảnh chụp màn hình của Trợ lý Ngoại lệ:
Hoặc, VS2012 đang được cẩn thận hơn VS2010 về các cấu trúc không an toàn. – nneonneo
Không có ngăn xếp cuộc gọi để xem xét kỹ lưỡng để giúp bạn. Nói chung, LoaderLock có xu hướng tạo ra cảnh báo sai. Bạn có thể tắt nó với hộp kiểm Debug + Exceptions, MDAs, LoaderLock. –
@Hans, có vẻ như không phải là ngăn xếp cuộc gọi (tôi đã thêm ảnh chụp màn hình của Trợ lý ngoại lệ vào bài đăng của tôi). Tôi cho rằng vấn đề là trong mã không được quản lý. – Darren