2010-04-27 5 views
0

OK. Je devenais un peu fou aujourd'hui avec un projet WPF. J'utilise VS2010 avec .NET 4.0 et j'ai ajouté une simple référence à un autre projet dans ma solution, ajouté une variable membre d'un des types référencés et essayé de compiler. Rien. Eh bien, quelque chose. Il n'a pas reconnu le type du tout.Multi ciblage enfer et modification des valeurs par défaut du projet

J'ai vérifié à l'espace de noms en utilisant l'instruction. Intellisense semblait l'aimer. En fait, Visual Studio est parfaitement content de me laisser naviguer dans la classe via la fonction Go To Definition. Certains d'entre vous qui lisez ceci savent déjà ce que c'est, mais je pensais que je devenais fou. Le projet WPF utilise par défaut le profil client, tandis que les autres projets ciblent le .NET 4.0 complet. J'ai eu les avertissements désactivés (stupide), donc je ne voyais pas le message d'avertissement sur la non-concordance du profil client.

Est-ce que quelqu'un d'autre pense qu'il est stupide d'avoir des projets WPF par défaut pour le ciblage par profil client, alors que le reste des projets par défaut cible le .NET 4.0 complet?

... Ce qui m'amène à ma question. Est-il possible de changer cette valeur par défaut, donc ce scénario ne se reproduira plus? Je voudrais toujours cibler une plate-forme ou l'autre.

Répondre

1

De nombreux types de projets dans VS2010 ciblent le profil client. MS fait une plus grande pression cette fois-ci pour obtenir le profil du client 4.0 (le profil du client 3.5 a été largement ignoré).

Pour ce que ça vaut, quel profil un type de projet cible par défaut est défini dans son modèle, et facile à modifier si vous le désirez ([VS Racine] \ Common7 \ IDE \ ProjectTemplates et modifiez l'élément TargetFrameworkProfile dans les fichiers csproj à l'intérieur des gabarits comme bon vous semble). Je ne le recommande pas cependant.

D'une manière générale, comme inélégant qu'il en soit, je pense que nous devons juste nous habituer à l'idée que le profil du client est plus important maintenant et être plus conscients que nous travaillons avec VS2010

+0

Je ne J'ai un énorme problème avec MS affirmant le profil du client. Pouvez-vous penser à une raison pour laquelle les bibliothèques de classes seraient par défaut à .NET 4.0. Les gars de l'interface graphique n'utilisent pas les bibliothèques? Je trouve cette logique un peu vicieuse. –