<Subtyp> Designer </ Subtyp> Wird beim Laden / Entladen von Visual Studio hinzugefügt und dann entfernt


177

Hat das schon mal jemand gesehen? Ich habe ein großes Visual Studio-Projekt, das immer wieder [Subtype]Designer[/Subtype]zu meinem Projekt hinzugefügt und .vcprojbeim nächsten Öffnen und Schließen des Projekts entfernt wird. Es ist nur eine Klasse in definiert StoredImageControl.cs. Jeder weiß, wie man das abschaltet, da es meine Revisionskontrolle wirklich durcheinander bringt.

Dies ist vor:

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

Das ist nach

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

Dasselbe mit <SubType> UserControl </ SubType> in VS 2005 sehen. Sehr seltsam.
David Gardiner

1
Ich sehe dieses Problem auch in VS 2008
schoetbi

1
Bin in VS 2010 darauf gestoßen. Auch verwirrt.
Jon Davis

Das gleiche passiert mir in VS 2008 die ganze Zeit. Ich versuche, die Auswirkungen auf die Quellcodeverwaltung zu verringern, indem ich kurz nach dem Auschecken zurücksetze, kurz bevor ich mit der eigentlichen Arbeit beginne ... aber es ist ein Unsinn und ich vergesse oft, dies zu tun. Haben Sie versucht, dies über connect.microsoft.com zu melden?
Alan

2
Warum haben Sie eine C # -Quellcodedatei in einem C / C ++ - Projekt?
Hans Passant

Antworten:


95

Dies hängt möglicherweise damit zusammen, welche Dateien Sie im gespeicherten Lösungsstatus geöffnet haben. Ich bin in VS2010 auf dieses Problem gestoßen und habe festgestellt, dass beim Schließen der Lösung, während eine XML-Datei im Editor geöffnet war, beim nächsten erneuten Öffnen der Lösung dem Projekt, das diese XML-Datei enthält, diese <SubType>Designer</SubType>Zeile hinzugefügt wird. Wenn ich die Lösung schließe, ohne dass diese Datei geöffnet ist, wird nicht versucht, diese Zeile beim folgenden erneuten Öffnen hinzuzufügen.


8
Das scheint das Problem für mich gewesen zu sein (auch VS 2010). Es ist jedoch ärgerlich, dass Visual Studio seine eigenen Änderungen an Ihren Dateien vornimmt, nur basierend darauf, welche geöffnet sind, insbesondere da sie in Ihrem Versionsverwaltungssystem angezeigt werden. Ich muss die "Features" von Microsoft lieben ...
Ben Sutton

10
Dies ist immer noch ein offenes Problem mit MS: connect.microsoft.com/VisualStudio/feedback/details/757970/…
Pat

4
Es ist VS2015, und dennoch tritt dies immer noch auf.
Johnny_D

2
VS2017, immer noch ein Problem. Macht die Verwendung der Quellcodeverwaltung unmöglich, da VS diese dummen <Subtype>Designer</SubType>Tags ständig sporadisch hinzufügt .
Triynko

1
Sie haben connect getötet, aber Developercommunity.visualstudio.com/content/problem/204355/… sagt, dass es zumindest für VS2019 Preview 2
Josh Sutterfield

38

Dies war ein Problem in mindestens drei Editionen von Visual Studio, 2008, 2010 und jetzt 2012. Es wird in Microsoft Connect als Fehler protokolliert, aber die MS-Antwort lautet "Wir haben Ihre Anfrage aufgezeichnet, planen jedoch nicht, dies zu beheben." Zeit." Schlagen Sie vor, dass Sie den Fehlerbericht abstimmen, da er noch aktiv ist und möglicherweise eine bessere Antwort von MS mit genügend Stimmen erhält.


25
2013 und jetzt 2015 haben das gleiche Problem.
James Skemp

4
Ja, ich habe es gerade zum ersten Mal in VS2015 gesehen.
JohnC

2
Nein JohnC, es ist kein Fehler, es ist eine Straftat.
Patrick Fromberg

4
Microsoft Connect ist veraltet. Ich habe eine neue Ausgabe auf Developercommunity.visualstudio.com geöffnet . Es ist "Under Consideration", also stimmen Sie ab!
Enzi

"Wir haben dieses Problem behoben und es ist in Visual Studio 2019 Preview 2 verfügbar. Vielen Dank für Ihr Feedback!" - Nach einer Lösung zum Thema Devcommunity.
Josh Sutterfield

8

In der .csproj-Datei meiner ASP.NET-Webanwendung tritt dasselbe Problem auf:

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

Gegen:

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

Mein Ärger über dieses Problem ist auch auf Änderungen der Revisionskontrolle zurückzuführen. Das Problem scheint in VS 2005/2008/2010 vorhanden zu sein. Habe die folgende Frage in Microsoft-Foren gefunden, aber die Antwort ist nicht klar.

Ich hoffe, dass eine VS-Einstellung dies verursacht. In diesem Fall möchte ich Sie wissen lassen, wenn ich herausfinde, was diese Einstellung ist.


1
Die Ausgabe ist auch im Vergleich zu 2013 dringend.
Johan

Nur ein weiteres Beispiel für das Ändern von Dateien durch Visual Studio, wenn es sich anfühlt. Eines Tages wird Microsoft endlich erkennen, dass der Benutzer verantwortlich sein sollte und Dateien nach dem Zufallsprinzip ändern sollte, ohne dass der Benutzer OK sollte, sollte
NIEMALS

7

Versuchen Sie, den SubType als Attribut des EmbeddedResource-Objekts einzufügen?

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

Ich habe eine Frage wie Ihre unter folgendem Link gesehen und er hat sein Problem damit gelöst:

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


1
Die Verwendung des SubTypeAttributtricks funktioniert nicht bei <Content>Elementen: VS2010 beschwert sich, dass das Attribut nicht erkannt wird.
Pierre Arnaud

3

Ich habe festgestellt, dass <SubType>Designer</SubType>sich das Verhalten für Web.config ändert.

Wir verwenden WebDeploy, um Webdienstdateien zu veröffentlichen.

Wenn SubType für Web.config festgelegt ist , wird diese Datei korrekt im Hauptverzeichnis veröffentlicht, in dem sich alle Inhaltsdateien befinden, und .svc.

Wenn SubType nicht festgelegt ist - dies geschieht oben, kopiert aber auch Web.config unter bin \ subdirectory - was sehr seltsam ist! Im MsBuild-Protokoll geschieht dies während des CollectFilesFrom_SourceItemsToCopyToOutputDirectory-Ziels.


0

Für mich verursacht dies auch Probleme mit der Versionskontrolle, wenn dem Projekt neue Dateien hinzugefügt werden.

Um dies zu umgehen, habe ich Folgendes getan: Ausstehende Änderungen an der Projektdatei rückgängig machen und dann manuell neue Dateien hinzufügen, indem Sie mit der rechten Maustaste klicken -> vorhandene Dateien zum Projekt hinzufügen.

Dabei kommt das Tag < SubType >Designer< /SubType >nicht.

Hoffe das wird jemandem helfen. Daher poste dies.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.