<Subtype> Designer </Subtype> Aggiunto e rimosso da Visual Studio durante il caricamento / scaricamento


177

Qualcuno l'ha visto prima? Ho un grande progetto di Visual Studio che continua ad aggiungersi [Subtype]Designer[/Subtype]al mio, .vcprojrimuovendolo alla successiva apertura e chiusura del progetto. C'è solo una classe definita in StoredImageControl.cs. Qualcuno sa come spegnerlo perché sta davvero rovinando il mio controllo di revisione.

Questo è prima di:

<EmbeddedResource Include="StoredImageControl.resx">
  <DependentUpon>StoredImageControl.cs</DependentUpon>
</EmbeddedResource>

Questo è dopo

<EmbeddedResource Include="StoredImageControl.resx">
  <DependentUpon>StoredImageControl.cs</DependentUpon>
  <SubType>Designer</SubType>
</EmbeddedResource>

Vedere la stessa cosa con <SubType> UserControl </SubType> in VS 2005. Molto strano.
— David Gardiner,

1
Vedo anche questo problema in VS 2008
— schoetbi

1
Ci siamo imbattuti in questo nel 2010. Anche confuso.
— Jon Davis,

Stessa cosa che mi succede sempre in VS 2008. Cerco di ridurre l'impatto del controllo della sorgente ripristinando subito dopo il checkout, proprio prima di iniziare a fare qualsiasi lavoro reale ... ma è un kludge e spesso mi dimentico di farlo. Hai provato a segnalarlo tramite connect.microsoft.com?
— Alan,

2
Perché hai un file di codice sorgente C # in un progetto C / C ++?
— Hans Passant,

Risposte:


95

Ciò potrebbe essere correlato ai file aperti nello stato della soluzione salvata. Ho riscontrato questo problema in VS2010 e ho scoperto che se chiudessi la soluzione mentre un file .xml era aperto nell'editor, alla successiva riapertura della soluzione, il progetto contenente quel file .xml avrebbe <SubType>Designer</SubType>aggiunto questa riga. Se chiudo la soluzione senza aprire quel file, tuttavia, non tenta di aggiungere quella riga alla successiva riapertura.


8
Questo sembra essere stato il problema per me (anche VS 2010). Tuttavia fastidioso che Visual Studio apporterebbe le proprie modifiche ai file solo in base a quelli che sono aperti, soprattutto dal momento che vengono visualizzati nel sistema di controllo del codice sorgente. Devo amare le "caratteristiche" di Microsoft ...
— Ben Sutton,

10
Questo è ancora un problema aperto con MS: connect.microsoft.com/VisualStudio/feedback/details/757970/…
— Pat

4
È VS2015, eppure questo si verifica ancora.
— Johnny_D,

2
VS2017, ancora un problema. Rende impossibile l'utilizzo del controllo del codice sorgente, perché VS aggiunge costantemente questi stupidi <Subtype>Designer</SubType>tag sporadicamente.
— Triynko,

1
Hanno ucciso connect ma developercommunity.visualstudio.com/content/problem/204355/... dice che è risolto, almeno per VS2019 Preview 2
— Josh Sutterfield

38

Questo è stato un problema in almeno 3 edizioni di Visual Studio, 2008, 2010 e ora 2012. È registrato come un bug in Microsoft Connect ma la risposta di MS è "Abbiamo registrato la tua richiesta ma non stiamo pianificando di risolverlo in questo tempo." Suggerisci di votare la segnalazione di bug in quanto è ancora attiva e potrebbe ottenere una risposta migliore dagli Stati membri con voti sufficienti.


25
2013 e ora 2015 hanno lo stesso problema.
— James Skemp,

4
Sì, l'ho visto per la prima volta in VS2015 proprio ora.
— Giovanni

2
No JohnC, non è un bug, è un reato.
— Patrick Fromberg,

4
Microsoft Connect è stato deprecato, ho aperto un nuovo problema su developercommunity.visualstudio.com. È "Under Consideration", quindi votalo!
— enzi,

"Abbiamo risolto questo problema ed è disponibile in Visual Studio 2019 Preview 2 Grazie per il tuo feedback!" - secondo una soluzione sul problema della devcommunity.
— Josh Sutterfield,

8

Sto riscontrando lo stesso problema nel file .csproj della mia applicazione Web ASP.NET:

<ItemGroup>
  <Content Include="site.master" />
  <Content Include="Web.config">
    <SubType>Designer</SubType>
  </Content>
</ItemGroup>

Contro:

<ItemGroup>
  <Content Include="site.master" />
  <Content Include="Web.config" />
</ItemGroup>

Il mio fastidio per questo problema è dovuto anche alle modifiche del controllo di revisione. Il problema sembra essere presente in VS 2005/2008/2010. Ho trovato la seguente domanda sui forum Microsoft, ma la risposta non è chiara.

Spero che un'impostazione VS la causi, nel qual caso, mi piacerà che tu sappia quando scoprirò qual è quell'impostazione.


1
Il problema è urgente anche rispetto al 2013.
— Johan,

Solo un altro esempio di Visual Studio che modifica i file quando ne hai voglia. Un giorno Microsoft si renderà finalmente conto che l'utente dovrebbe essere responsabile e di cambiare casualmente i file senza che gli utenti OK non debbano MAI accadere
— goneskiing

7

Cerchi di inserire il sottotipo come attributo dell'oggetto EmbeddedResource?

<EmbeddedResource Include="StoredImageControl.resx" SubType="Designer"> 
  <DependentUpon>StoredImageControl.cs</DependentUpon> 
</EmbeddedResource> 

Ho visto una domanda come la tua nel seguente link e ha risolto il suo problema con questo:

http://community.sharpdevelop.net/forums/t/9977.aspx


1
L'uso del SubTypetrucco dell'attributo non funziona sugli <Content>elementi: VS2010 lamenta che l'attributo non è riconosciuto.
— Pierre Arnaud,

3

Ho scoperto che <SubType>Designer</SubType>cambia il comportamento di Web.config.

Utilizziamo WebDeploy per pubblicare file di servizi Web.

Se Sottotipo è impostato per Web.config, pubblica questo file correttamente nella directory principale in cui vanno tutti i file di contenuto e .svc.

Se Sottotipo non è impostato - lo fa sopra ma copia anche Web.config sotto bin \ sottodirectory - il che è molto strano! Nel registro MsBuild ciò accade durante la destinazione CollectFilesFrom_SourceItemsToCopyToOutputDirectory.


0

Anche per me questo causa problemi con il controllo della versione quando vengono aggiunti nuovi file al progetto.

Per ovviare a ciò ho fatto: annullare le modifiche in sospeso al file di progetto e quindi aggiungere manualmente nuovi file facendo clic con il pulsante destro del mouse -> aggiungi file esistenti al progetto.

Mentre lo fai, il tag < SubType >Designer< /SubType >non arriva.

Spero che questo possa aiutare qualcuno. Quindi pubblicando questo.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.