“Un progetto con un tipo di output di libreria di classi non può essere avviato direttamente”

Sono un debuttante in C # e Visual C # IDE, non so nulla su come usarli affatto. Ho programmato tutta la mia vita in C su EclipseIDE. Ho cercato su diversi punti come risolvere questo problema, ma non ho potuto ottenere una procedura corretta per farlo. Sto postando la domanda qui, per questo motivo.

Ho scaricato un progetto C # , desidero eseguire il debug del progetto per vedere come funziona un’implementazione dell’algoritmo.

Il progetto è arrivato in una cartella, all’interno di questa cartella ci sono –

  1. File .sln e
  2. una cartella che ha – File di origine e file .csproj .

Ho installato Visual Studio C # Express e ho aperto il file .sln presente nella cartella principale del VS C # IDE . Ho realizzato il progetto con successo, ma quando provo a eseguire il debug del progetto ottengo questo messaggio:

Un progetto con un tipo di output di libreria di classi non può essere avviato direttamente Per eseguire il debug di questo progetto, aggiungere un progetto eseguibile a questa soluzione che fa riferimento al progetto di libreria. Imposta il progetto eseguibile come progetto di avvio.

La parte strana è che non vedo una funzione principale da nessuna parte.

Cosa dovrei fare per andare avanti di questo singhiozzo?

Il progetto che hai scaricato compila in un assembly dll e fornisce un set di classi con funzionalità implementate.

È necessario aggiungere alla soluzione un nuovo progetto con Tipo di output di Applicazione console o Applicazione Windows (la procedura guidata VS Add Project offrirà diversi modelli di progetti).

Nel progetto appena aggiunto, è ansible implementare la logica per testare la libreria di classi.

Tipo di output del progetto che puoi trovare e modificare con i seguenti passaggi:

  1. Fare clic con il tasto destro del mouse sul progetto in Esplora soluzioni -> Proprietà.

  2. Nella scheda aperta con proprietà selezionare Applicazione e ci sarà ComboBox contrassegnato con etichetta Tipo di output.

Basta fare clic destro sulla soluzione di progetto Si apre una finestra. Espandi le proprietà comuni. Seleziona Start Up Project

In là sul lato destro Seleziona il pulsante radio con Single Startup Project Seleziona il tuo progetto e applica.

Questo è tutto. Ora salva e costruisci il tuo progetto. Esegui il progetto per vedere l’output.

Questa è stata la soluzione che ha funzionato per me dal momento che non sono riuscito a trovare l’opzione ‘Proprietà comuni’.

  1. Seleziona il progetto di livello più alto in Esplora soluzioni .
  2. Vai a Progetto, e nel menu contestuale Imposta come Progetto di avvio .

    Imposta come Progetto di avvio

Vedere anche: non è ansible avviare direttamente un progetto con un tipo di output di libreria di classi

Basta andare:

Solution Explorer -> Vai a Proprietà —> cambia (progetto Single Startup) da.dll a .web

Quindi prova a eseguirne il debug.

Sicuramente il tuo problema sarà risolto.

La parte strana è che non vedo una funzione principale da nessuna parte.

Questo è esattamente il tuo problema. Il progetto crea semplicemente una DLL. Non ha eseguibile da eseguire.

Dovrai aggiungere un secondo progetto, che è un eseguibile che fa riferimento all’altro progetto e chiama qualcosa al suo interno.

Avrai bisogno di qualche tipo di app (le App Console sono le mie preferite per il debug, ma un WinForm lo farà) che usa la tua libreria di classi. Basta aggiungere un nuovo progetto (nella stessa soluzione) di un’applicazione console o di un’applicazione Windows Form e aggiungere un riferimento al progetto corrente. Dopo averlo fatto, effettua le chiamate che ti servono, imposta i punti di interruzione e vai in città.

 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 

Ho avuto un problema simile durante il tentativo di utilizzare l’istanza sperimentale di Visual Studio 2013. Questo era per un progetto vsix (Creazione di frammenti).

La soluzione era:

Fare clic con il tasto destro del mouse su Progetto in Esplora soluzioni > Proprietà > Debug

Impostazione dell’azione di avvio su "Start external program" e utilizzando il seguente percorso:

C: \ Programmi (x86) \ Microsoft Visual Studio 12.0 \ Common7 \ IDE \ devenv.exe

Questa opzione è stata impostata su "Start project" che non funzionerà per il tipo di output dell’applicazione Libreria di classi, che ha causato lo stesso errore.

Nota: il vostro può variare a seconda di come è stato installato VS.

Le soluzioni di errore sono che hai già aperto il tuo progetto ma per errore hai selezionato un’altra libreria di classi .. questo è il motivo per cui questo errore viene visualizzato … quindi cosa devi fare per selezionare il tuo progetto, quindi fare clic con il tasto destro del mouse sul tuo progetto

dopo aver cliccato col tasto destro puoi vedere la casella di riepilogo e selezionare l’opzione ” Imposta come progetto di avvio “.

Saikat Banik

Supponiamo di avere più progetti nella soluzione. Seleziona il progetto che desideri visualizzare nel browser e seleziona “Imposta come progetto di avvio” . Nel tuo progetto multiplo che era il principale, lo studio visivo non era in grado di identificare. questo era il problema principale.

  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. 

Se ancora non funziona dopo i passaggi precedenti, prova questo.

  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" 

Quindi salva (ctrl + S)

Prova il debugging (F5)

È ansible fare clic con il pulsante destro del mouse sul progetto Libreria di classi e dal menu a discesa scegliere Initialize Interactive C # che caricherà il contesto del progetto e sarà ansible utilizzarlo nella sessione intertriggers.