installé le plus récent (je pense) .NET CORE, créé un projet Web Core .NET via Visual Studio 2015 et a essayé de commencer à utiliser les secrets d'utilisateur. Le CLI affirme qu'il manquait (après avoir prétendu l'avoir installé ...), comme ci-dessous: ajoutez également le fichier projet.json par demande: p> {
"userSecretsId": "<snip>",
"dependencies": {
"Microsoft.NETCore.App": {
"version": "1.0.0-rc2-3002702",
"type": "platform"
},
"Microsoft.AspNetCore.Authentication.Cookies": "1.0.0-rc2-final",
"Microsoft.AspNetCore.Diagnostics": "1.0.0-rc2-final",
"Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore": "1.0.0-rc2-final",
"Microsoft.AspNetCore.Identity.EntityFrameworkCore": "1.0.0-rc2-final",
"Microsoft.AspNetCore.Mvc": "1.0.0-rc2-final",
"Microsoft.AspNetCore.Razor.Tools": {
"version": "1.0.0-preview1-final",
"type": "build"
},
"Microsoft.AspNetCore.Server.IISIntegration": "1.0.0-rc2-final",
"Microsoft.AspNetCore.Server.Kestrel": "1.0.0-rc2-final",
"Microsoft.AspNetCore.StaticFiles": "1.0.0-rc2-final",
"Microsoft.EntityFrameworkCore.SqlServer": "1.0.0-rc2-final",
"Microsoft.EntityFrameworkCore.Tools": {
"version": "1.0.0-preview1-final",
"type": "build"
},
"Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0-rc2-final",
"Microsoft.Extensions.Configuration.Json": "1.0.0-rc2-final",
"Microsoft.Extensions.Configuration.UserSecrets": "1.0.0-rc2-final",
"Microsoft.Extensions.Logging": "1.0.0-rc2-final",
"Microsoft.Extensions.Logging.Console": "1.0.0-rc2-final",
"Microsoft.Extensions.Logging.Debug": "1.0.0-rc2-final",
"Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0-rc2-final",
"Microsoft.VisualStudio.Web.CodeGeneration.Tools": {
"version": "1.0.0-preview1-final",
"type": "build"
},
"Microsoft.VisualStudio.Web.CodeGenerators.Mvc": {
"version": "1.0.0-preview1-final",
"type": "build"
},
"Microsoft.AspNetCore.Authentication.Google": "1.0.0-rc2-final"
},
"tools": {
"Microsoft.AspNetCore.Razor.Tools": {
"version": "1.0.0-preview1-final",
"imports": "portable-net45+win8+dnxcore50"
},
"Microsoft.AspNetCore.Server.IISIntegration.Tools": {
"version": "1.0.0-preview1-final",
"imports": "portable-net45+win8+dnxcore50"
},
"Microsoft.EntityFrameworkCore.Tools": {
"version": "1.0.0-preview1-final",
"imports": [
"portable-net45+win8+dnxcore50",
"portable-net45+win8"
]
},
"Microsoft.Extensions.SecretManager.Tools": {
"version": "1.0.0-preview1-final",
"imports": "portable-net45+win8+dnxcore50"
},
"Microsoft.VisualStudio.Web.CodeGeneration.Tools": {
"version": "1.0.0-preview1-final",
"imports": [
"portable-net45+win8+dnxcore50",
"portable-net45+win8"
]
}
},
"frameworks": {
"netcoreapp1.0": {
"imports": [
"dotnet5.6",
"dnxcore50",
"portable-net45+win8"
]
}
},
"buildOptions": {
"emitEntryPoint": true,
"preserveCompilationContext": true
},
"runtimeOptions": {
"gcServer": true
},
"publishOptions": {
"include": [
"wwwroot",
"Views",
"appsettings.json",
"web.config"
]
},
"scripts": {
"prepublish": [ "npm install", "bower install", "gulp clean", "gulp min" ],
"postpublish": [ "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" ]
}
}
3 Réponses :
Lorsque vous utilisez l'un des packages d'outils définis dans la section code> Outils code> de votre fichier projet.json, vous devez les utiliser à partir du même répertoire contenant le fichier Project.json. P>
Par exemple, votre fichier projet.json est dans E: \ Projects \ codeserver \ src \ codeserver \ projet.json code>, mais vous essayez d'exécuter la commande de
E: \ Projets \ CodeServer Code>. Si vous modifiez dans le
E: \ Projects \ CODESERVER \ SRC \ CODESERVER \ code> Avant de tenter d'utiliser les outils, les commandes fonctionneront alors. P>
C'était bien le problème. Il m'a confondu que dotnet restaure code> fonctionne du niveau de la solution mais
dotnet utilisateurs-secrets code> échoue complètement. J'espère qu'une future version peut donner une erreur plus descriptive.
J'ai trouvé que la console de gestionnaire de paquets est parfois (ou tout le temps pour) est impossible d'utiliser le répertoire correct (même s'il est sélectionné dans la liste déroulante du projet par défaut). Si vous exécutez d'abord la commande 'CD SRC \ YourProjectName', puis par E.G. "DotNet User-Secrets -h" (pour aide) Vous devriez pouvoir utiliser l'outil User-Secrets. P>
UPVOTE pour la manière de modifier le répertoire de la console de gestionnaire de packages. Merci
Cela a travaillé pour moi dans Visual Studio 2017 - 15.2. Merci!
La réponse acceptée à cette question est correcte mais le fichier projet.json n'existe plus. (Visual Studios 2017 et .net Core 2.1) Il a été remplacé par un fichier "votre nom de nom" .csproj. Référence: Il y a Aucun projet.json, global.json ... etc sur la solution de base .NET avec Visual Studio 2017 P>
Pourriez-vous montrer votre projet.json?
C'est juste la valeur par défaut de VS, mais sûr.
Je ne peux pas reproduire cela,
dotnet utilisateur-secrets -h code> fonctionne bien pour moi avec votre projet.json.
FWIW, les versions plus récentes de .NET CORE, le package Microsoft.extensions.secretmanager.Tools doit être ajouté à la section "Outils" de Project.json. Sinon, "DotNet User-Secrets" échouera avec l'erreur "Aucune exécutable de la commande correspondante trouvée" Dotnet-User-Secrets "'. (J'ai également dû supprimer le fichier Project.lock.json pour une raison quelconque également pour obtenir le package à ajouter).