2012-09-04 28 views
6

Tôi có dự án VS 5.0 mã đầu tiên của VS 2012 và tất cả lệnh menu Entity Framework (Xem Entity Data Model DDL SQL) tạo ra "Ngoại lệ đã được ném bởi mục tiêu của một lời gọi "popup". Tôi nghĩ rằng những gì cũng đã thay đổi là EF Power Tools Beta 1 (hoặc VS 2010, tôi không chắc chắn) sử dụng để hiển thị các thông báo của EF Power Tools trong cửa sổ đầu ra. Bây giờ tất cả tôi nhận được là popup ... Đây có phải là vấn đề VS hoặc Power Tools?EF Power Tools Beta 2 - ngoại lệ đã được ném bởi mục tiêu của một lời gọi

+1

Tôi gặp vấn đề tương tự khi bạn tìm hiểu lý do hoặc cách giải quyết? – Eatdoku

+0

Tôi tin đây là vấn đề về Công cụ Nguồn điện của EF. Vấn đề lớn nhất ở đây là VS không cung cấp đủ chi tiết để tìm hiểu xem có gì sai ... – Pawel

+0

Đó chính là quan điểm của tôi - không có gì để giúp thu hẹp nó xuống. Nó có thể là a), b) c) .. Tôi không muốn đi qua tất cả các kết hợp có thể .. phiên bản beta trước ít nhất đã hiển thị tiến trình và tin nhắn, nhưng phiên bản mới không (hoặc có thể tôi không biết nơi để xem ..) –

Trả lời

0

Có lẽ Visual Studio đang gặp khó khăn trong việc tìm ra chuỗi kết nối nào để sử dụng cho DBContext của bạn, khi bạn chọn các lệnh menu Entity Framework.

Trong trường hợp của tôi, tôi đã có thể giải quyết vấn đề này bằng cách xác minh rằng tôi đã có chuỗi kết nối "mặc định" cho dbContext của mình. Vì vậy, khi bạn nhấp chuột phải vào bối cảnh db và chọn khung Entity, bạn sẽ có kết nối với DB.

Nói cách khác, tôi đã sửa đổi DBContext của mình để chọn chuỗi kết nối từ tham số dòng lệnh cho ứng dụng của tôi. Vì vậy, thông thường, bối cảnh db của tôi không có giá trị "mặc định".

public class MyDbContext : DbContext 
{ 
    public static string ConnectionName; 

    public DnnDbContext() 
     : base("Name=" + ConnectionName) {  
    } 

Như bạn thấy, tôi không có ConnectionString theo mặc định.

tôi đã thay đổi để:

public static string ConnectionName = "DefaultConnNameInAppConfig"; 
4

đây là công việc của tôi xung quanh:

Comment các nhà xây dựng ra, và rời khỏi MyDbContext tĩnh như là ->

public class MyDbContext: DbContext 
{ 
    public static string ConnectionName = "Name = SMS_ADvTECHContext"; 
    static MyDbContext() 
    { 
     Database.SetInitializer<SMS_ADvTECHContext>(null); 
    } 

/* public SMS_MyDbContext() 
     : base(ConnectionName) 
    { 
    }*/ 
} 

Sau đó, nếu bạn nhấn chuột phải vào lớp bối cảnh -> Enityframework -> Xem mô hình dữ liệu thực thể (chỉ đọc) nó tạo ra khung nhìn!

0

Tôi gặp lỗi này khi tôi không có nhà máy kết nối mặc định chính xác được định cấu hình trong App.config bên trong dự án bao gồm lớp DbContext của tôi. Tôi đã cập nhật nó để sử dụng đúng nhà máy và lỗi này đã biến mất. Trong trường hợp của tôi, tôi đặt nó để sử dụng LocalDbConnectionFactory:

<entityFramework> 
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework"> 
     <parameters> 
      <parameter value="v11.0" /> 
     </parameters> 
    </defaultConnectionFactory> 
</entityFramework> 
0

Khi gặp phải lỗi này và đó là vấn đề đơn giản hơn ... dự án chứa Ngữ cảnh của tôi không phải là Dự án khởi động. Khi tôi đã thiết lập dự án là Dự án khởi động nó đã bắt đầu hoạt động.

0

Tôi đã gặp phải điều này khi tôi có nhiều chuỗi kết nối có cùng tên được định cấu hình trong web.config của tôi.

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