web-dev-qa-db-fra.com

<Sous-type> Designer </ Sous-type> ajouté puis supprimé par Visual Studio lors du chargement / déchargement

Quelqu'un a vu ça avant? J'ai un grand projet Visual Studio qui continue à ajouter [Subtype]Designer[/Subtype] à mon .vcproj puis supprimez-le à la prochaine ouverture et fermeture du projet. Il n'y a qu'une seule classe définie dans StoredImageControl.cs. Tout le monde sait comment désactiver cette fonctionnalité, car cela gâche mon contrôle de révision.

C'est avant:

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

C'est après

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

Cela peut être lié aux fichiers que vous avez ouverts dans l'état de la solution enregistrée. J'ai rencontré ce problème dans VS2010 et j'ai constaté que si je ferme la solution lorsqu'un fichier .xml est ouvert dans l'éditeur, puis lors de la réouverture ultérieure de la solution, le projet contenant ce fichier .xml obtiendra ce <SubType>Designer</SubType> ligne ajoutée. Si je ferme la solution sans ouvrir ce fichier, il n'essaie pas d'ajouter cette ligne lors de la réouverture suivante.

95
Nathan Reed

Cela a posé problème dans au moins trois éditions de Visual Studio, 2008, 2010 et maintenant 2012. Il est consigné en tant que bogue dans Microsoft Connect , mais la réponse de MS est "Nous avons enregistré votre demande, mais nous le sommes déjà." ne prévoit pas de résoudre ce problème pour le moment. " Je vous suggère de voter le rapport de bogue car il est toujours actif et pourrait obtenir une meilleure réponse de la part de MS avec suffisamment de votes.

37
JohnC

Je rencontre le même problème dans le fichier .csproj de mon application Web ASP.NET:

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

Contre:

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

Mon ennui avec ce problème est également dû aux changements de contrôle de révision. Le problème semble être présent dans VS 2005/2008/2010. J'ai trouvé la question suivante sur les forums Microsoft, mais la réponse n'est pas claire.

J'espère qu'un paramètre VS le provoque, dans ce cas, j'aimerai que vous sachiez quand je saurai quel est ce paramètre.

8
JohnB

Essayez-vous de définir le sous-type comme un attribut de l'objet EmbeddedResource?

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

J'ai vu une question comme la vôtre dans le lien ci-dessous, et il a résolu son problème avec cela.

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

6
Mauro Gagna

Je l'ai trouvé <SubType>Designer</SubType> change le comportement de Web.config.

Nous utilisons WebDeploy pour publier des fichiers de service Web.

Si Sous-type est définir pour Web.config, il publie ce fichier correctement dans le répertoire principal où se trouvent tous les fichiers de contenu et .svc.

Si SubType est non défini - il reproduit ci-dessus mais copie également Web.config dans le sous-répertoire bin\- ce qui est très étrange! Dans le journal MsBuild, cela se produit lors de la cible CollectFilesFrom_SourceItemsToCopyToOutputDirectory.

3
Ivan

Pour moi aussi, cela pose des problèmes avec le contrôle de version, lorsque de nouveaux fichiers sont ajoutés au projet.

En guise de solution de rechange, annulez les modifications en attente au fichier de projet, puis ajoutez manuellement les nouveaux fichiers en cliquant avec le bouton droit de la souris -> ajouter des fichiers existants au projet.

Ce faisant, la balise <SubType> Designer </ SubType> ne vient pas.

J'espère que cela aidera quelqu'un. D'où poster ceci.

0
NidhinSPradeep