Powershell: Установка VS 15.6 нарушает обработку Powershell JSON

Созданный на 8 мар. 2018  ·  3Комментарии  ·  Источник: PowerShell/PowerShell

Visual Studio 15.6, выпущенная недавно (https://blogs.msdn.microsoft.com/visualstudio/2018/03/06/visual-studio-2017-version-15-6-visual-studio-for-mac-version- 7-4-релиз) перерывы / обработка Powershell JSON

Выпуск 1:

Действия по воспроизведению

"[{x:'b'},{x:'a'}]" | ConvertFrom-Json | ConvertTo-Json

Ожидаемое поведение

до того, как VS 15.6 использовался для возврата

[
  {
      "x":  "b"
  },
  {
      "x":  "a"
  }
]

Фактическое поведение

С установленным VS 15.6 возвращает

{
    "value":  [
                  {
                      "x":  "b"
                  },
                  {
                      "x":  "a"
                  }
              ],
    "Count":  2
}

Данные окружающей среды

> $PSVersionTable
Name                           Value
----                           -----
PSVersion                      5.1.16299.248
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.16299.248
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1

Выпуск 2:

Действия по воспроизведению

"[{x:'b'},{x:'a'}]" | ConvertFrom-Json | Sort-Object -Property x

Ожидаемое поведение

до того, как VS 15.6 использовался для возврата

x
-
a
b

Фактическое поведение

С установленным VS 15.6 возвращает

x
-
b
a

Данные окружающей среды

> $PSVersionTable
Name                           Value
----                           -----
PSVersion                      5.1.16299.248
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.16299.248
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1
Issue-Question OS-Windows Resolution-Answered Resolution-External

Все 3 Комментарий

У меня установлена ​​виртуальная машина с VS 15.5.6, и я могу сказать, что нет разницы между моим ноутбуком разработчика с VS 15.6.1.
То, что вы описываете, как ожидалось, - это то, что я получаю в PowerShell 6 (на обеих машинах), а то, что вы описываете как реальное, я получаю на Windows PowerShell 5.1 на обеих машинах. Обратите внимание, что это репо предназначено только для проблем с PowerShell 6.

Чтобы добавить к комментарию @bergmeister : описанная вами проблема была исправлена ​​в _Core_ некоторое время назад (но все еще существует в _Windows PowerShell_ v5.1): # 3153

Как указано в шаблоне ошибки:

Если у вас возникли проблемы, предложения или запросы функций Windows PowerShell 5.1, воспользуйтесь следующей ссылкой:

Была ли эта страница полезной?
0 / 5 - 0 рейтинги