Comment ajouter une référence dans VS 2015 / .NET 4.6?

est-ce que VS 2015 a radicalement changé la façon dont les références sont ajoutées?

je fais un projet web MVC. Je voulais utiliser System.Configuration.ConfigurationManager dans mon application .NET 4.6. Je suis allé à l' References noeud Add Reference... et ajouté le système.Configuration 1.0.0.0. Intellisense a maintenant été en mesure de fournir automatiquement les propriétés et les méthodes pour ConfigurationManager, par exemple ConfigurationManager.AppSettings.

Cependant, lorsque j'ai essayé de compiler, il dit

CS0234 le type ou le nom d'espace de noms 'Configuration' n'existe pas dans l'espace de nom "System" (vous manque une référence d'assembly?)

comment les choses se font-elles dans le nouveau cadre. net?

quand je passe ma souris au-dessus de la using System.Configuration déclaration, il y a un texte de ballon avec un triangle jaune et un point d'exclamation qui dit:

{} Namespace System.Configuration
  MyProject.DNX 4.5.1 - Available
  MyProject.DNX Core 5.0 - Not Available
You can use the navigation bar to switch context.

qu'est-ce que cela signifie?

10
demandé sur Old Geezer 2015-12-17 04:38:28

3 réponses

Cela signifie que vous avez défini.Configuration dans DNX 4.5.1 ce qui signifie qu'il n'est pas disponible pour DNX Core 5.0.

Le projet.JSON file indique au compilateur que DNX Core 5.0 sera le principal framework cible. Donc, si le Système.L'espace de noms de Configuration N'est pas disponible dans DNX Core 5.0 alors vous allez avoir une erreur.

pour résoudre ceci vous devez changer l'ordre des cadres définis dans le projet.json

à Partir de:

"frameworks": {
    "dnxcore50": {
      },
      "dnx451": {
      }
   }

 "frameworks": {
        "dnx451": {
          },
          "dnxcore50": {
          }
       }

alors vous dites au compilateur que votre framework cible principal est maintenant DNX 4.5.1 qui est un framework plus complet mais dépendant (.net Framework 4.5.1 != .net Core)

.NET Core est un très petit sous-ensemble de .net Framework qui est utile pour exécuter vos applications dans des environnements non windows tels que Linux et Mac.

si vous ciblez les environnements Windows, je recommande fortement de cibler DNX 4.5.1 ou 4.6

2
répondu Juan Amador 2016-06-27 18:27:08

Désolé que je ne peux pas mettre un commentaire avec mes points.

je suggère les choses que vous devez faire :

  • ajouter une référence qui cible votre cadre actuel (référence - > ajouter une référence - > assemblées - > Cadre - > Système.De Configuration)
  • essayez d'Ajouter système.Configuration 4.0.0.0 au lieu de 1.0.0.0
  • vérifiez si vous avez ajouté 'en utilisant le système.Configuration;' dans votre programme ou pas

Im en utilisant Système.La Configuration 4.0.0.0 et son bon fonctionnement dans Visual Studio 2015

vous pouvez le vérifier plus en ici

0
répondu Mark 2015-12-17 02:06:16

le message Vous pouvez utiliser la barre de navigation pour changer de contexte. montre quand vous avez des projets qui utilisent des fichiers ajoutés comme lien (menu contextuel d'un projet puis Add->élément existant...->Ajouter En Tant Que Lien).

Exemple: supposons que vous avez un fichier C#de l'échantillon.cs dans un projet ProjectA et le même fichier est référencé comme un lien dans Projetb. Ensuite, vous écrivez en de l'échantillon.cs certains codes qui utilisent bibliothèque appelée Bibliothèque. Vous avez également référence à cette Bibliothèque ProjectA. Si le Projetb devrait également faire référence à la bibliothèque. Si non, alors ce message s'affiche: Vous pouvez utiliser la barre de navigation pour changer de contexte. Exemple complet de message:

{} Namespace Library
ProjectA 1.0.0 - Available
ProjectB 1.0.0 - Not Available
You can use the navigation bar to switch context.
0
répondu Rython 2017-03-08 10:08:32