MvcScaffolding NuGet安装:“具有相同密钥的项目已被添加”

问题描述:

通过NuGet安装MvcScaffolding时出现错误。有没有人有任何建议如何解决这个问题?MvcScaffolding NuGet安装:“具有相同密钥的项目已被添加”

PM> install-Package MvcScaffolding -Verbose 
Dependency 'T4Scaffolding (≥ 1.0.0)' already installed. 
Dependency 'EntityFramework (≥ 4.1.10311.0)' already installed. 
Added file 'InstallationDummyFile.txt' to folder 'MvcScaffolding.1.0.0\content'. 
Added file 'Action.cs.t4' to folder 'MvcScaffolding.1.0.0\tools\Action'. 
Added file 'Action.vb.t4' to folder 'MvcScaffolding.1.0.0\tools\Action'. 
Added file 'ActionPost.cs.t4' to folder 'MvcScaffolding.1.0.0\tools\Action'. 
Added file 'ActionPost.vb.t4' to folder 'MvcScaffolding.1.0.0\tools\Action'. 
Added file 'MvcScaffolding.Action.ps1' to folder 'MvcScaffolding.1.0.0\tools\Action'. 
Added file 'ViewModel.cs.t4' to folder 'MvcScaffolding.1.0.0\tools\Action'. 
Added file 'ViewModel.vb.t4' to folder 'MvcScaffolding.1.0.0\tools\Action'. 
Added file 'MvcScaffolding.ActionUnitTest.ps1' to folder 'MvcScaffolding.1.0.0\tools\ActionUnitTest'. 
Added file 'TestClass.cs.t4' to folder 'MvcScaffolding.1.0.0\tools\ActionUnitTest'. 
Added file 'TestClass.vb.t4' to folder 'MvcScaffolding.1.0.0\tools\ActionUnitTest'. 
Added file 'TestMethod.cs.t4' to folder 'MvcScaffolding.1.0.0\tools\ActionUnitTest'. 
Added file 'TestMethod.vb.t4' to folder 'MvcScaffolding.1.0.0\tools\ActionUnitTest'. 
Added file 'MvcScaffolding.ActionWithUnitTest.ps1' to folder 'MvcScaffolding.1.0.0\tools\ActionWithUnitTest'. 
Added file 'Create.cs.t4' to folder 'MvcScaffolding.1.0.0\tools\AspxView'. 
Added file 'Create.vb.t4' to folder 'MvcScaffolding.1.0.0\tools\AspxView'. 
Added file 'CreateOrEdit.cs.t4' to folder 'MvcScaffolding.1.0.0\tools\AspxView'. 
Added file 'CreateOrEdit.vb.t4' to folder 'MvcScaffolding.1.0.0\tools\AspxView'. 
Added file 'Delete.cs.t4' to folder 'MvcScaffolding.1.0.0\tools\AspxView'. 
Added file 'Delete.vb.t4' to folder 'MvcScaffolding.1.0.0\tools\AspxView'. 
Added file 'Details.cs.t4' to folder 'MvcScaffolding.1.0.0\tools\AspxView'. 
Added file 'Details.vb.t4' to folder 'MvcScaffolding.1.0.0\tools\AspxView'. 
Added file 'Edit.cs.t4' to folder 'MvcScaffolding.1.0.0\tools\AspxView'. 
Added file 'Edit.vb.t4' to folder 'MvcScaffolding.1.0.0\tools\AspxView'. 
Added file 'Empty.cs.t4' to folder 'MvcScaffolding.1.0.0\tools\AspxView'. 
Added file 'Empty.vb.t4' to folder 'MvcScaffolding.1.0.0\tools\AspxView'. 
Added file 'Index.cs.t4' to folder 'MvcScaffolding.1.0.0\tools\AspxView'. 
Added file 'Index.vb.t4' to folder 'MvcScaffolding.1.0.0\tools\AspxView'. 
Added file 'MvcScaffolding.AspxView.ps1' to folder 'MvcScaffolding.1.0.0\tools\AspxView'. 
Added file 'ControllerWithContext.cs.t4' to folder 'MvcScaffolding.1.0.0\tools\Controller'. 
Added file 'ControllerWithContext.vb.t4' to folder 'MvcScaffolding.1.0.0\tools\Controller'. 
Added file 'ControllerWithRepository.cs.t4' to folder 'MvcScaffolding.1.0.0\tools\Controller'. 
Added file 'ControllerWithRepository.vb.t4' to folder 'MvcScaffolding.1.0.0\tools\Controller'. 
Added file 'MvcScaffolding.Controller.ps1' to folder 'MvcScaffolding.1.0.0\tools\Controller'. 
Added file 'MvcScaffolding.ControllerWithRepository.ps1' to folder 'MvcScaffolding.1.0.0\tools\Controller'. 
Added file 'init.ps1' to folder 'MvcScaffolding.1.0.0\tools'. 
Added file 'install.ps1' to folder 'MvcScaffolding.1.0.0\tools'. 
Added file 'Create.cs.t4' to folder 'MvcScaffolding.1.0.0\tools\RazorView'. 
Added file 'Create.vb.t4' to folder 'MvcScaffolding.1.0.0\tools\RazorView'. 
Added file 'Delete.cs.t4' to folder 'MvcScaffolding.1.0.0\tools\RazorView'. 
Added file 'Delete.vb.t4' to folder 'MvcScaffolding.1.0.0\tools\RazorView'. 
Added file 'Details.cs.t4' to folder 'MvcScaffolding.1.0.0\tools\RazorView'. 
Added file 'Details.vb.t4' to folder 'MvcScaffolding.1.0.0\tools\RazorView'. 
Added file 'Edit.cs.t4' to folder 'MvcScaffolding.1.0.0\tools\RazorView'. 
Added file 'Edit.vb.t4' to folder 'MvcScaffolding.1.0.0\tools\RazorView'. 
Added file 'Empty.cs.t4' to folder 'MvcScaffolding.1.0.0\tools\RazorView'. 
Added file 'Empty.vb.t4' to folder 'MvcScaffolding.1.0.0\tools\RazorView'. 
Added file 'Index.cs.t4' to folder 'MvcScaffolding.1.0.0\tools\RazorView'. 
Added file 'Index.vb.t4' to folder 'MvcScaffolding.1.0.0\tools\RazorView'. 
Added file 'MvcScaffolding.RazorView.ps1' to folder 'MvcScaffolding.1.0.0\tools\RazorView'. 
Added file '_CreateOrEdit.cs.t4' to folder 'MvcScaffolding.1.0.0\tools\RazorView'. 
Added file '_CreateOrEdit.vb.t4' to folder 'MvcScaffolding.1.0.0\tools\RazorView'. 
Added file 'registerWithMvcTooling.ps1' to folder 'MvcScaffolding.1.0.0\tools'. 
Added file 'MvcScaffolding.Views.ps1' to folder 'MvcScaffolding.1.0.0\tools\Views'. 
Added file 'MvcScaffolding.1.0.0.nupkg' to folder 'MvcScaffolding.1.0.0'. 
Successfully installed 'MvcScaffolding 1.0.0'. 
Executing script file 'C:\MyProject\packages\MvcScaffolding.1.0.0\tools\init.ps1'. 
Added file 'InstallationDummyFile.txt'. 
Added file 'InstallationDummyFile.txt' to project 'ReinsuranceManagementWebUI' 
Added file 'packages.config'. 
Added file 'packages.config' to project 'ReinsuranceManagementWebUI' 
Successfully added 'MvcScaffolding 1.0.0' to ReinsuranceManagementWebUI. 
Executing script file 'C:\MyProject\packages\MvcScaffolding.1.0.0\tools\install.ps1'. 
Get-ProjectItem : An item with the same key has already been added. 
At C:\MyProject\packages\MvcScaffolding.1.0.0\tools\install.ps1:22 char:16 
+ Get-ProjectItem <<<< "InstallationDummyFile.txt" -Project $projectName | %{ $_.Delete() } 
    + CategoryInfo   : NotSpecified: (:) [Get-ProjectItem], ArgumentException 
    + FullyQualifiedErrorId : T4Scaffolding.Cmdlets.GetProjectItemCmdlet 

Set-DefaultScaffolder : An item with the same key has already been added. 
At C:\MyProject\packages\MvcScaffolding.1.0.0\tools\install.ps1:24 char:22 
+ Set-DefaultScaffolder <<<< -Name Controller -Scaffolder MvcScaffolding.Controller -SolutionWide -DoNotOverwriteExistingSetting 
    + CategoryInfo   : NotSpecified: (:) [Set-DefaultScaffolder], ArgumentException 
    + FullyQualifiedErrorId : T4Scaffolding.Cmdlets.SetDefaultScaffolderCmdlet 

Set-DefaultScaffolder : An item with the same key has already been added. 
At C:\MyProject\packages\MvcScaffolding.1.0.0\tools\install.ps1:25 char:22 
+ Set-DefaultScaffolder <<<< -Name Views -Scaffolder MvcScaffolding.Views -SolutionWide -DoNotOverwriteExistingSetting 
    + CategoryInfo   : NotSpecified: (:) [Set-DefaultScaffolder], ArgumentException 
    + FullyQualifiedErrorId : T4Scaffolding.Cmdlets.SetDefaultScaffolderCmdlet 

Set-DefaultScaffolder : An item with the same key has already been added. 
At C:\MyProject\packages\MvcScaffolding.1.0.0\tools\install.ps1:26 char:22 
+ Set-DefaultScaffolder <<<< -Name Action -Scaffolder MvcScaffolding.Action -SolutionWide -DoNotOverwriteExistingSetting 
    + CategoryInfo   : NotSpecified: (:) [Set-DefaultScaffolder], ArgumentException 
    + FullyQualifiedErrorId : T4Scaffolding.Cmdlets.SetDefaultScaffolderCmdlet 

Set-DefaultScaffolder : An item with the same key has already been added. 
At C:\MyProject\packages\MvcScaffolding.1.0.0\tools\install.ps1:27 char:22 
+ Set-DefaultScaffolder <<<< -Name UnitTest -Scaffolder MvcScaffolding.ActionUnitTest -SolutionWide -DoNotOverwriteExistingSetting 
    + CategoryInfo   : NotSpecified: (:) [Set-DefaultScaffolder], ArgumentException 
    + FullyQualifiedErrorId : T4Scaffolding.Cmdlets.SetDefaultScaffolderCmdlet 

Set-DefaultScaffolder : An item with the same key has already been added. 
At C:\MyProject\packages\MvcScaffolding.1.0.0\tools\install.ps1:31 char:22 
+ Set-DefaultScaffolder <<<< -Name View -Scaffolder $viewScaffolder -SolutionWide -DoNotOverwriteExistingSetting 
    + CategoryInfo   : NotSpecified: (:) [Set-DefaultScaffolder], ArgumentException 
    + FullyQualifiedErrorId : T4Scaffolding.Cmdlets.SetDefaultScaffolderCmdlet 

我试图用这个命令卸载重新安装:

Uninstall-Package MvcScaffolding -RemoveDependencies 
+0

有CodePlex上一些额外的细节:http://mvcscaffolding.codeplex.com/workitem/ 27 – tjrobinson 2011-06-27 07:59:32

正如在原来问题的评论中提到的,我相信这是MVC脚手架的错误,请参阅:http://mvcscaffolding.codeplex.com/workitem/27

我有这个错误问题,以及。对我而言,解决方案是卸载MvcScaffolding及其每个依赖项,并使用单独的命令为每个卸载执行“Uninstall-Package T4Scaffolding”。我也从我的驱动器和源代码控制中删除了它们的关联文件和文件夹。然后,我重新安装,一切都很好。删除文件似乎是关键。

+0

我认为这值得一试,尽管它不利于我的处境 – tjrobinson 2011-07-13 10:53:55