2015-08-07 12 views
8

che sto aprendo alcuni vecchi progetti VB.NET in Visual Studio 2015 e quando ho modificare il codice, VS cambia la sintassi:Prevenire Visual Studio 2015 di rimuovere i caratteri linea di continuazione (_) in VB.NET file

rimuove "_" in concatenazioni:

'Before 
myString = "ABC" & _ 
      "DEF" 

'After 
myString = "ABC" & 
      "DEF" 

o aggiungere uno spazio prima:!

'Before 
myDatatable.Rows(0)!myColumn 

'After 
myDatatable.Rows(0) !myColumn 

Questa sintassi non è compatibile con Visual Studio 2010 o 2013.

Come posso disabilitare queste modifiche?

+1

[Possibilmente correlato bug report] (https://connect.microsoft.com/VisualStudio/feedback/details/1035813/connect-vb-14-compiler-removes-line-continuations-even-when-web -config-specifica-vb-8-as-compiler) e [successiva correzione] (https://github.com/dotnet/roslyn/pull/3294) - se si targetizza specificamente la vecchia versione, mantiene la sintassi originale? –

+1

Ah, la correzione è contrassegnata come "approvata per la prossima anteprima" - forse non è ancora presente. –

+0

Una rapida occhiata su [sito di Roslyn] (https://github.com/dotnet/roslyn) non indica il loro programma di rilascio. Qualcuno determina/sa quando la correzione sarà disponibile per il consumo di massa? – wags1999

risposta

14

Ho avuto lo stesso problema e sono riuscito a risolverlo disabilitando l'opzione "Pretty listing" nell'editor. È possibile trovare questa opzione qui:

Tools > Options > Text Editor > Basic > Advanced > Editor Help > Pretty listing (reformatting) of code 

Non sono sicuro di ciò che gli altri auto-riformattazione questa opzione disabilita, ma almeno l'editor smesso di rimuovere i caratteri linea di continuazione nel vecchio codice/progetti.

PS: Mentre la squadra Roslyn dice lo hanno risolto questo (vedi link sotto), questo bug è ancora presente nella versione più recente di Visual Studio 2015.

modificaLink to bug report - Link to merged fix (copiato da primo commento su domanda originale)

+0

Si prega di aggiungere un riferimento per il backup della dichiarazione che "il team di Roslyn dice che hanno risolto questo" –

+0

Modificato la mia risposta per copiare- incolla i link citati nel commento della domanda originale. Inoltre, questa è davvero una buona ragione per downvotare una possibile correzione? – RiptoR

+0

Certo, grazie –

-3

Non sono più necessari caratteri di continuazione della linea, questo è il motivo per cui vengono rimossi. La tua opzione è, usa la versione di Visual Studio con cui hai aperto il progetto o la soluzione oppure usa una versione precedente che li mantiene.

Se si vuole essere in grado di aprire un progetto con entrambe le versioni questo non è possibile, ma non dovrebbe essere necessario in quanto la versione più recente può semplicemente indirizzare una versione di framework più vecchia, se questo è ciò che è necessario.

+0

Grazie. Nel mio caso stiamo testando VS 2015 con i nostri progetti con framework 4.0. Distribuiamo il nostro codice sorgente ai nostri partner e abbiamo bisogno di avere la massima compatibilità possibile. In questo caso, se spostiamo il codice su VS 2015, i nostri partner dovranno aggiornare la versione VS. –

+2

Non ne hai bisogno in un progetto .net 4.0, ma VS 2015 rimuoverà i caratteri di sottolineatura nei progetti precedenti e ti dirà che ne hai bisogno. –

+0

Il problema è che un collaboratore remoto può avere un'altra versione VS, oppure quando si collabora a un progetto opensource si don –

Problemi correlati