前阵子闲的没事吧自己项目的Entitiy Framework 升级到6.1.3了,然后紧接着问题来了:

  1. Join-Path : 无法将参数绑定到参数“Path”,因为该参数是空值。
  2. 所在位置 F:\Source\WebSolution\packages\EntityFramework.6.1.\tools\EntityFramework.psm1: 字符:
  3. + $toolsPath = Join-Path <<<< $installPath tools
  4. + CategoryInfo : InvalidData: (:) [Join-Path], ParameterBindingValidationException
  5. + FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.JoinPathCommand
  6.  
  7. Join-Path : 无法将参数绑定到参数“Path”,因为该参数是空值。
  8. 所在位置 F:\Source\WebSolution\packages\EntityFramework.6.1.\tools\EntityFramework.psm1: 字符:
  9. + $utilityAssembly = [System.Reflection.Assembly]::LoadFrom((Join-Path <<<< $ToolsPath EntityFramework.PowerShell.Utility.dll))
  10. + CategoryInfo : InvalidData: (:) [Join-Path], ParameterBindingValidationException
  11. + FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.JoinPathCommand
  12.  
  13. 不能对值为空的表达式调用方法。
  14. 所在位置 F:\Source\WebSolution\packages\EntityFramework.6.1.\tools\EntityFramework.psm1: 字符:
  15. + $dispatcher = $utilityAssembly.CreateInstance <<<< (
  16. + CategoryInfo : InvalidOperation: (CreateInstance:String) [], RuntimeException
  17. + FullyQualifiedErrorId : InvokeMethodOnNull
  18.  
  19. Join-Path : 无法将参数绑定到参数“Path”,因为该参数是空值。
  20. 所在位置 F:\Source\WebSolution\packages\EntityFramework.6.1.\tools\EntityFramework.psm1: 字符:
  21. + (Join-Path <<<< $runner.ToolsPath EntityFramework.PowerShell.dll),
  22. + CategoryInfo : InvalidData: (:) [Join-Path], ParameterBindingValidationException
  23. + FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.JoinPathCommand
  24.  
  25. Join-Path : 无法将参数绑定到参数“Path”,因为该参数是空值。
  26. 所在位置 F:\Source\WebSolution\packages\EntityFramework.6.1.\tools\EntityFramework.psm1: 字符:
  27. + $toolsPath = Join-Path <<<< $installPath tools
  28. + CategoryInfo : InvalidData: (:) [Join-Path], ParameterBindingValidationException
  29. + FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.JoinPathCommand
  30.  
  31. Join-Path : 无法将参数绑定到参数“Path”,因为该参数是空值。
  32. 所在位置 F:\Source\WebSolution\packages\EntityFramework.6.1.\tools\EntityFramework.psm1: 字符:
  33. + $utilityAssembly = [System.Reflection.Assembly]::LoadFrom((Join-Path <<<< $ToolsPath EntityFramework.PowerShell.Utility.dll))
  34. + CategoryInfo : InvalidData: (:) [Join-Path], ParameterBindingValidationException
  35. + FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.JoinPathCommand
  36.  
  37. 不能对值为空的表达式调用方法。
  38. 所在位置 F:\Source\WebSolution\packages\EntityFramework.6.1.\tools\EntityFramework.psm1: 字符:
  39. + $dispatcher = $utilityAssembly.CreateInstance <<<< (
  40. + CategoryInfo : InvalidOperation: (CreateInstance:String) [], RuntimeException
  41. + FullyQualifiedErrorId : InvokeMethodOnNull
  42.  
  43. Join-Path : 无法将参数绑定到参数“Path”,因为该参数是空值。
  44. 所在位置 F:\Source\WebSolution\packages\EntityFramework.6.1.\tools\EntityFramework.psm1: 字符:
  45. + (Join-Path <<<< $runner.ToolsPath EntityFramework.PowerShell.dll),
  46. + CategoryInfo : InvalidData: (:) [Join-Path], ParameterBindingValidationException
  47. + FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.JoinPathCommand

一大堆的乱起八糟的,开始以为是Entitiy Framework版本问题或者是VS的问题,各种乱试都没能成功。

无奈只得翻墙GOOGLE了最后得到的结论是:跟Entitiy Framework的版本以及VS都无关是PowerShell的版本问题,

查了下我机器上是2.0版本的

PS C:\Users\PC> $PSVersionTable.PSVersion

Major Minor Build Revision
----- ----- ----- --------
2 0 -1 -1

于是想法升级(我的版本选择错误,这是个4。0的版本建议升级3.0试试能够成功解决)

Windows Management Framework 4.0

下载地址

https://www.microsoft.com/zh-CN/download/details.aspx?id=40855

我系统是win7 于是下载了 Windows6.1-KB2819745-x64-MultiPkg.msu

悲剧的事这个PowerShell居然是4.0版本的升级过头了出现了新问题:

  1. New-Object : 提供的值无效或属性是只读的。请更改该值,然后再试一次。所在位置 F:\Source\WebSolution\packages\EntityFramework.6.1.\tools\EntityFramework.psm1: 字符:
  2. + $info = New-Object System.AppDomainSetup -Property @{
  3. + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  4. + CategoryInfo : InvalidData: (:) [New-Object],Exception
  5. + FullyQualifiedErrorId : SetValueException,Microsoft.PowerShell.Commands.NewObjectCommand
  6.  
  7. 在此对象上找不到属性“PrivateBinPath”。请确认该属性存在并且可设置。所在位置 F:\Source\WebSolution\packages\EntityFramework.6.1.\tools\EntityFramework.psm1: 字符:
  8. + $info.PrivateBinPath += ';lib\net45'
  9. + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  10. + CategoryInfo : InvalidOperation: (:) [],RuntimeException
  11. + FullyQualifiedErrorId : PropertyNotFound
  12.  
  13. 使用“”个参数调用“LoadFrom”时发生异常:“指定的路径或文件名太长,或者两者都太长。完全限定文件名必须少于 个字符,并且目录名必须少于 个字符。”所在位置 F:\Source\WebSolution\packages\EntityFramework.6.1.\tools\Entit
  14. yFramework.psm1: 字符:
  15. + $utilityAssembly = [System.Reflection.Assembly]::LoadFrom((Join-Path $ToolsP ...
  16. + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  17. + CategoryInfo : NotSpecified: (:) [], MethodInvocationException
  18. + FullyQualifiedErrorId : PathTooLongException
  19.  
  20. 不能对 Null 值表达式调用方法。所在位置 F:\Source\WebSolution\packages\EntityFramework.6.1.\tools\EntityFramework.psm1: 字符:
  21. + $dispatcher = $utilityAssembly.CreateInstance(
  22. + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  23. + CategoryInfo : InvalidOperation: (:) [],RuntimeException
  24. + FullyQualifiedErrorId : InvokeMethodOnNull
  25.  
  26. 使用“”个参数调用“CreateInstanceFrom”时发生异常:“指定的路径或文件名太长,或者两者都太长。完全限定文件名必须少于 个字符,并且目录名必须少于 个字符。”所在位置 F:\Source\WebSolution\packages\EntityFramework.6.1.\t
  27. ools\EntityFramework.psm1: 字符:
  28. + $domain.CreateInstanceFrom(
  29. + ~~~~~~~~~~~~~~~~~~~~~~~~~~~
  30. + CategoryInfo : NotSpecified: (:) [], MethodInvocationException
  31. + FullyQualifiedErrorId : PathTooLongException

无奈继续求助GOOGLE吧

得到的结论很多有替换EntityFramework.psm1文件,有升级Nuget。

https://github.com/aspnet/EntityFramework/issues/1950#issuecomment-99164398

只得替换EntityFramework.psm1好些没啥效果

最终选择了升级NuGet 3.0 RC2

成功解决!

走了很多弯路,也不知道是不是最正确的解决版本,希望能给遇到同样问题的有所帮助吧。

VS 2015 (RC)下Entitiy Framework 升级后CodeFirst命令不能使用的更多相关文章

  1. macOS 升级后重装命令行工具的问题

    问题背景 最近升级个人macbook 从 10.13 到 10.14 在终端输入 git 不能用了,发现是重装操作系统后原来的 Command Line Tools 被自动卸载了, 采用 xcode- ...

  2. OS X 10.9 Mavericks下如何安装Command Line Tools(命令行工具)

    OS X 10.9 Mavericks下如何安装Command Line Tools(命令行工具) 今天OS X 10.9 Mavericks正式发布,免费更新,立即去更新看看效果. 不过升级后安装命 ...

  3. CentOS6 系统下升级python后yum命令使用时报错

    CentOS6 系统下升级python后yum命令使用时报错,如下: [root@xxxxxxx]#yumFile"/usr/bin/yum",line30exceptKeyboa ...

  4. CENTOS下Python 升级后YUM无法使用的解决办法

    Python有很多实用的工具,安装依赖python版本较高,升级Python后导致yum无法使用. 原因: 系统自带的yum依赖Python老版本,升级后不兼容 解决办法: 1. 列出所有版本,确定老 ...

  5. Visual Studio 2015 RC版官方下载(ISO)

    微软Build2015开发者大会发布了下代开发套件Visual Studio 2015 RC候选版,覆盖企业版.专业版以及免费授权的Community社区版,原生支持开发通用型Windows Apps ...

  6. 关于kali2.0rolling中metasploit升级后无法启动问题的解决总结

    最近在学习metasploit的使用,文中提到可以使用msfupdate命令来对metasploit的payload.exploit等进行升级,我就试了一下,没想到升级过程并不麻烦,但升级后却出现了无 ...

  7. 【Win10 应用开发】解决VS 2015 RC不能调试手机应用的问题

    VS2015 RC已发布,当然这个版本还不能用于实际生产中,如果你没有测试环境,就等正式版出来,RC都来了,RTM就不远了. 如果你也像老周一样,已经在耍RC版了,你可能会遇到下面问题: 安装Win ...

  8. 转:linux下安装或升级GCC4.8,以支持C++11标准

    转:http://www.cnblogs.com/lizhenghn/p/3550996.html C++11标准在2011年8月份获得一致通过,这是自1998年后C++语言第一次大修订,对C++语言 ...

  9. linux下安装或升级GCC4.8,以支持C++11标准

    C++11标准在2011年8月份获得一致通过,这是自1998年后C++语言第一次大修订,对C++语言进行了改进和扩充.随后各编译器厂商都各自实现或部分实现了C++中的特性. 如需查看各编译器对C++1 ...

随机推荐

  1. MySQL在线备份与恢复工具 --> Xtrabackup

    1 Xtrabackup原理简介 xtrabackup是一个对InnoDB做数据备份的工具,支持在线热备份(备份时不影响数据读写),是商业备份工具InnoDB Hotbackup的一个很好的替代品.  ...

  2. Docker系列(九)Kubernetes安装

    环境: A.B两天机器A机器IP:192.169.0.104,B机器IP:192.168.0.102,其中A为Master节点,B为Slave节点 操作系统:Centos7 Master与Slave节 ...

  3. leetcode@ [211] Add and Search Word - Data structure design

    https://leetcode.com/problems/add-and-search-word-data-structure-design/ 本题是在Trie树进行dfs+backtracking ...

  4. 天天动听MP3解码器性能提升50%

    天天动听今日升级提醒,发现有一句 “使用新的MP3解码器,性能提升50%”,太惊讶了. 之前版本的MP3解码器使用libmpg123,效果已经是MP3解码器中非常不错的了. 50%的提升,应该不仅仅是 ...

  5. Aisino 金税盘 pass throught

  6. drag and drop

    <!DOCTYPE HTML> <html> <head> <script type="text/javascript"> func ...

  7. 使用list和tuple

    list Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素. 比如,列出班里所有同学的名字,就可以用一个list表示: >>> ...

  8. 第十三章、学习 Shell Scripts 循环 (loop)

    while do done, until do done (不定循环) while [ condition ] <==中括号内的状态就是判断式 do <==do 是回圈的开始! 程序段落 ...

  9. 【Stage3D学习笔记续】山寨Starling(四):渲染代码实现及测试程序

    本章会实现最核心的代码,所以涉及点会比较多,这里会发布一个版本,方便日后的回退查看. 点击下载:https://codeload.github.com/hammerc/hammerc-study-St ...

  10. Web- 一些标签样式

    网上找来的.有点用 1.只有下划线的文本框:<input style="border:0;border-bottom:1 solid black;background:;"& ...