<Subtype> Designer </Subtype> Agregado y luego eliminado por Visual Studio al cargar / descargar


177

Alguien ve esto antes? Tengo un gran proyecto de Visual Studio que se agrega [Subtype]Designer[/Subtype]a mi y .vcprojluego lo elimina en la próxima apertura y cierre del proyecto. Solo hay una clase definida en StoredImageControl.cs. Alguien sabe cómo apagar esto, ya que realmente está arruinando mi control de revisión.

Esto es antes de:

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

Esto es despues

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

Al ver lo mismo con <SubType> UserControl </SubType> en VS 2005. Muy extraño.
David Gardiner

1
También veo este problema en VS 2008
schoetbi

1
Encontré esto en VS 2010. También confundido.
Jon Davis

Lo mismo me pasa en VS 2008 todo el tiempo. Intento disminuir su impacto en el control de la fuente al revertir poco después de finalizar la compra, justo antes de comenzar a hacer cualquier trabajo real ... pero es un error y a menudo me olvido de hacerlo. ¿Has intentado denunciarlo a través de connect.microsoft.com?
Alan

2
¿Por qué tiene un archivo de código fuente C # en un proyecto C / C ++?
Hans Passant

Respuestas:


95

Esto podría estar relacionado con los archivos que tiene abiertos en el estado de la solución guardada. Me encontré con este problema en VS2010 y descubrí que si cierro la solución mientras un archivo .xml estaba abierto en el editor, en la reapertura posterior de la solución, el proyecto que contiene ese archivo .xml <SubType>Designer</SubType>agregaría esta línea. Sin embargo, si cierro la solución sin abrir ese archivo, no intenta agregar esa línea en la siguiente reapertura.


8
Ese parece haber sido el problema para mí (VS 2010 también). Sin embargo, es molesto que Visual Studio realice sus propios cambios en sus archivos en función de cuáles están abiertos, especialmente porque aparecen en su sistema de control de código fuente. Tengo que amar las "características" de Microsoft ...
Ben Sutton

10
Esto sigue siendo un problema abierto con MS: connect.microsoft.com/VisualStudio/feedback/details/757970/…
Pat

44
Es VS2015 y, sin embargo, esto todavía ocurre.
Johnny_D

2
VS2017, sigue siendo un problema. Hace que sea imposible usar el control de fuente, porque VS agrega constantemente estas estúpidas <Subtype>Designer</SubType>etiquetas esporádicamente.
Triynko

1
Mataron a Connect, pero developercommunity.visualstudio.com/content/problem/204355/… dice que está resuelto al menos para VS2019 Preview 2
Josh Sutterfield

38

Este ha sido un problema en al menos 3 ediciones de Visual Studio, 2008, 2010 y ahora 2012. Está registrado como un error en Microsoft Connect pero la respuesta de MS es "Hemos registrado su solicitud pero no estamos planeando solucionar esto en este momento hora." Le sugiero que vote el informe de error, ya que todavía está activo y podría obtener una mejor respuesta de MS con suficientes votos.


25
2013 y ahora 2015 tienen el mismo problema.
James Skemp

44
Sí, lo vi por primera vez en VS2015 hace un momento.
JohnC

2
No JohnC, no es un error, es un delito penal.
Patrick Fromberg

44
Microsoft Connect ha quedado en desuso, abrí un nuevo problema en developercommunity.visualstudio.com. Está "bajo consideración", ¡así que vote!
enzi

"Hemos solucionado este problema y está disponible en Visual Studio 2019 Preview 2 ¡Gracias por sus comentarios!" - De acuerdo con una solución sobre el tema devcommunity.
Josh Sutterfield

8

Me encuentro con el mismo problema en el archivo .csproj de mi aplicación web ASP.NET:

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

Versus:

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

Mi molestia con este problema se debe también a los cambios en el control de revisión. El problema parece estar presente en VS 2005/2008/2010. Encontré la siguiente pregunta en los foros de Microsoft, pero la respuesta no está clara.

Espero que una configuración VS lo cause, en cuyo caso, me gustaría que sepas cuando descubra cuál es esa configuración.


1
El problema también está presente en el 2013.
Johan

Solo otro ejemplo de Visual Studio modificando archivos cuando parece. Un día, Microsoft finalmente se da cuenta de que el usuario debe estar a cargo y cambiar aleatoriamente los archivos sin que los usuarios Aceptar NUNCA debería ocurrir
goneskiing

7

¿Intenta poner el Subtipo como un atributo del objeto EmbeddedResource?

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

Vi una pregunta como la suya en el siguiente enlace y resolvió su problema con esto:

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


1
El uso del SubTypetruco del atributo no funciona en los <Content>elementos: VS2010 se queja de que el atributo no se reconoce.
Pierre Arnaud

3

Descubrí que eso <SubType>Designer</SubType>cambia el comportamiento de Web.config.

Usamos WebDeploy para publicar archivos de servicios web.

Si SubType está configurado para Web.config, publica este archivo correctamente en el directorio principal donde van todos los archivos de contenido y .svc.

Si SubType no está configurado , lo hace arriba, pero también copia Web.config en bin \ subdirectory, ¡lo cual es muy extraño! En el registro de MsBuild, esto sucede durante el destino CollectFilesFrom_SourceItemsToCopyToOutputDirectory.


0

Para mí, esto también causa problemas con el control de versiones cuando se agregan nuevos archivos al proyecto.

Como alternativa, hice: deshacer los cambios pendientes en el archivo del proyecto y luego agregar manualmente nuevos archivos haciendo clic derecho -> agregar archivos existentes al proyecto.

Al hacer esto, la etiqueta < SubType >Designer< /SubType >no viene.

Espero que esto ayude a alguien. Por lo tanto, publicar esto.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.