Một dự án với loại Thư viện lớp đầu ra không thể được khởi động trực tiếp


166

Tôi đã tải xuống một dự án C # và tôi muốn gỡ lỗi dự án để xem cách triển khai thuật toán.

Dự án đã có trong một Thư mục, bên trong thư mục này có -

  1. .slntập tin
  2. một thư mục có tệp nguồn và .csprojtệp .

Tôi đã cài đặt Visual Studio và mở .slntệp có trong thư mục chính. Tôi đã xây dựng dự án thành công, nhưng khi tôi cố gắng gỡ lỗi dự án, tôi nhận được thông báo này:

Một dự án với loại Thư viện lớp đầu ra có thể được khởi động trực tiếp Để gỡ lỗi dự án này, hãy thêm một dự án thực thi vào giải pháp này tham chiếu dự án thư viện. Đặt dự án thực thi là dự án khởi động.

Phần kỳ lạ là tôi không thấy chức năng chính ở bất cứ đâu.

Tôi nên làm gì để có được vòng nấc này?

Câu trả lời:


173

Dự án bạn đã tải xuống biên dịch thành một tập hợp dll và cung cấp một tập hợp các lớp với chức năng được triển khai.

Bạn nên thêm vào giải pháp của mình một dự án mới với Loại đầu ra của Ứng dụng Console hoặc Ứng dụng Windows (Trình hướng dẫn VS Add Project sẽ cung cấp cho bạn các mẫu Dự án khác nhau).

Trong dự án mới được thêm vào, bạn có thể triển khai logic để kiểm tra Thư viện lớp của mình.

Loại đầu ra của dự án bạn có thể tìm và thay đổi theo các bước sau:

  1. Nhấp chuột phải vào dự án trong Solution Explorer -> Properties.

  2. Trong tab đã mở có thuộc tính, chọn Ứng dụng và sẽ có ComboBox được đánh dấu bằng nhãn Loại đầu ra.


7
Và đừng quên đặt dự án mới được tạo thành dự án khởi động (Nhấp chuột phải vào dự án mới↦Đặt là Dự án khởi động)
bugybunny

@ormsybunny bạn bình luận là những gì còn thiếu trong câu trả lời ở trên!
đánh

111

Chỉ cần nhấp chuột phải vào Giải pháp dự án Một cửa sổ bật lên. Mở rộng các thuộc tính chung. Chọn dự án khởi động

Ở đó ở phía bên phải Chọn nút radio với Dự án khởi động đơn Chọn Dự án của bạn trong đó và áp dụng.

Đó là nó. Bây giờ lưu và xây dựng dự án của bạn. Chạy dự án để xem đầu ra.


60

Đây là giải pháp hiệu quả với tôi vì tôi không thể tìm thấy tùy chọn 'Thuộc tính chung'.

  1. Chọn dự án cấp cao nhất của bạn trong Solution Explorer .
  2. Chuyển đến Dự án và trong menu theo ngữ cảnh Đặt làm Dự án StartUp .

    Đặt làm Dự án StartUp

Xem thêm: Không thể bắt đầu trực tiếp một dự án với loại Thư viện lớp


Điều này cũng có hiệu quả với tôi trong VS 2015. Nó phải xây dựng cho tôi một web.config mới, và sau đó nó đã hoạt động trở lại.
Eric D. Johnson

Làm việc cho tôi trong Visual Studio 2019 là tốt.
user0474975

Cảm ơn một triệu nó đã tiết kiệm được hàng giờ của googling :)
Wolfazb

19

Chỉ cần đi:

Solution Explorer -> Chuyển đến Thuộc tính ---> thay đổi (Dự án khởi động đơn) từ.dll sang .web

Sau đó cố gắng gỡ lỗi nó.

Chắc chắn vấn đề của bạn sẽ được giải quyết.


12

Phần kỳ lạ là tôi không thấy chức năng chính ở bất cứ đâu.

Đó chính xác là vấn đề của bạn. Dự án chỉ tạo ra một DLL. Nó không có khả năng thực thi để chạy.

Bạn sẽ cần thêm một dự án thứ hai, đó là một thực thi tham chiếu đến dự án khác và gọi một cái gì đó trong đó.


Này James, Được rồi tôi đã thêm một dự án mới trong cùng một giải pháp. Một tệp .cs mới được tạo có chức năng chính. Bây giờ tôi nên tham khảo những gì. Ý bạn là gì? Khi tôi nhấp chuột phải vào tab tham chiếu, tôi nhận được cửa sổ Thêm tham chiếu.
HaggarTheHor khủng

Điều hướng đến Tab dự án. Sẽ có tập hợp các cụm được xác định trong giải pháp của bạn có sẵn để tham khảo.
Eugene Cheverda

1
Đúng chính xác. Đừng quên thêm các cách sử dụng cụ thể để có khả năng sử dụng các lớp của thư viện đó.
Eugene Cheverda

7
1) Right Click on **Solution Explorer**
2) Go to the **Properties** 
3) Expand **Common Properties**
4) Select **Start Up Project**
5) click the radio button (**Single Start_up Project**)
6) select your Project name 
7) Then Debug Your project

5

Bạn sẽ cần một số loại ứng dụng (Ứng dụng Console là ứng dụng yêu thích của tôi để gỡ lỗi, nhưng WinForm sẽ làm được) sử dụng Thư viện lớp của bạn. Chỉ cần thêm một dự án mới (trong cùng một giải pháp) của Ứng dụng Console hoặc Ứng dụng Windows Forms và thêm một tham chiếu đến dự án hiện tại của bạn. Khi bạn đã thực hiện điều đó, hãy thực hiện bất kỳ cuộc gọi nào bạn cần, đặt điểm dừng và đi đến thị trấn.


4

Tôi đã gặp một vấn đề tương tự khi cố gắng sử dụng Phiên bản thử nghiệm của Visual Studio 2013. Đây là một dự án vsix (Tạo đoạn trích).

Giải pháp là:

Dự án Nhấp chuột phải trong Solution Explorer > Thuộc tính > Gỡ lỗi

Đặt Hành động bắt đầu thành "Start external program"và sử dụng đường dẫn sau:

C: \ Tệp chương trình (x86) \ Microsoft Visual Studio 12.0 \ Common7 \ IDE \ devenv.exe

Tùy chọn này được đặt thành "Start project"không hoạt động đối với Thư viện lớp loại đầu ra ứng dụng, gây ra lỗi tương tự.

Lưu ý: Bạn có thể khác nhau tùy thuộc vào cách bạn cài đặt VS.


2
    Right Click on "Solution Explorer" -> "Properties"
    Expand "Common Properties"
    Select "Start Up Project"
    click the radio button "Single Start_up Project"
    select your Project name from the drop down list.

Nếu vẫn không hoạt động sau các bước trên, thì hãy thử điều này.

    Expand solutions explorer.
    Right click on project name -> "Properties"
    Go to "Application" tab
    Select "Output type" 
 From the drop down list select the appropriate type according to your application.
    "Windows application" or
    "Console application"

Sau đó lưu (ctrl + S)

Thử gỡ lỗi (F5)


0

Giả sử bạn có nhiều dự án trong giải pháp. Chọn dự án mà bạn muốn xem trong trình duyệt và chọn 'Đặt làm Dự án khởi động' . Trong nhiều dự án của bạn là chính, phòng thu hình ảnh không thể xác định được. đây là vấn đề chính


0

Giải pháp cho lỗi là bạn đã mở dự án của mình nhưng do nhầm lẫn bạn đã chọn một thư viện lớp khác .. đó là lý do lỗi này đang hiển thị ... vì vậy bạn cần làm gì bạn chỉ cần chọn dự án của bạn sau đó nhấp chuột phải vào dự án của bạn

Sau khi nhấp chuột phải, bạn có thể thấy hộp danh sách và chọn tùy chọn " Đặt làm dự án khởi động ".

Saikat Banik


0

Bạn có thể nhấp chuột phải vào dự án Thư viện lớp và từ trình đơn thả xuống, chọn Khởi tạo C # Tương tác sẽ tải bối cảnh dự án của bạn và bạn có thể làm việc với nó trong phiên tương tác.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.