microsoft / microsoft/DacFx

VS2022 with Microsoft.Build.Sql.v2.0.0 does not publish converted SSDT project

Open
#732 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

area: build sdk area: ssdt bug
Dominant language
C#
Stars
460
Forks
29
Avg merge
4d 9h
Merged PRs (30d)
7

Description

  • SqlPackage or DacFx Version: unknown, but earlier than 170.2.70.1
  • .NET Framework (Windows-only) or .NET Core: Both installed for VS2022 development
  • Environment (local platform and source/target platforms): Win10, VS2022/SSMS

Steps to Reproduce:

  1. start with older version of SSDT Project
  2. migrate the SSDT to use Microsoft.build.Sql.v1.0.0
  3. migrate the SSDT to use Microsoft.Build.Sql.v2.0.0
  4. uninstall VS2022 older SSDT Tools (ASP.NET and Azure workloads are de-selected)
  5. install the new SSDT SDK-Style Preview feature
  6. reinstall ASP.NET and Azure workloads
  7. reboot
  8. start VS2022,
  9. reload the SSDT Project
  10. build and try to publish the SSDT

Did this occur in prior versions? If not - which version(s) did it work in?
No, this only started when I began implementation of Microsoft.Build.Sql.v2.0.0
(DacFx/SqlPackage/SSMS/Azure Data Studio)

the following appears in the "Data Tool Operations" tab within vs2022

An exception was encountered while constructing the content of this frame.  This information is also logged in "C:\Users\REDACTED\AppData\Roaming\Microsoft\VisualStudio\17.0_e935e7d1\ActivityLog.xml".

Exception details:
System.ArgumentException: Value does not fall within the expected range.
   at Microsoft.Internal.VisualStudio.Shell.Interop.IVsPackageManagerPrivate.LoadPackageWithContext(Guid& packageGuid, Int32 reason, Guid& context)
   at Microsoft.VisualStudio.Platform.WindowManagement.WindowFrame.<>c__DisplayClass591_0.<<-ctor>b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.VisualStudio.Threading.AwaitExtensions.ExecuteContinuationSynchronouslyAwaiter`1.GetResult()
   at Microsoft.VisualStudio.Threading.AsyncLazy`1.<>c__DisplayClass20_0.<<GetValueAsync>b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.VisualStudio.Platform.WindowManagement.WindowFrame.<<ConstructContent>g__ConstructContentFromPackageAsync|243_1>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.VisualStudio.Platform.WindowManagement.WindowFrame.<>c__DisplayClass243_0.<<ConstructContent>b__2>d.MoveNext()

ActivityLog.xml
please find the mentioned Activity.xml file attached.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the migration from the older SSDT project through Microsoft.Build.Sql.v2.0.0 in VS2022, then build and publish while reviewing the attached ActivityLog.xml. Compare the behavior with the earlier Microsoft.Build.Sql version; done means the converted project publishes successfully without the Data Tool Operations exception.

Written by the indexing model from the issue text.

Assessment

Tech stack
sql
Domain
build-system, databases, devtools
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.