Adding a NuGet package to an SSIS Script Task does not, by itself, guarantee that the package’s DLLs will be available when the task runs. You must first confirm that the library targets a framework the Script Task supports, then make its required assemblies available both to the VSTA script project and to the machine and process executing the package. Microsoft’s current Script Task documentation says .NET Core and .NET Standard assembly references are not supported for this use.
What “bundling” means in an SSIS Script Task
There are several separate steps that are easy to confuse:
- Restore: NuGet resolves the package and its dependencies for the project.
- Compile: The VSTA script project needs references to compatible assemblies so the code can build.
- Run: The SSIS execution environment must be able to load the assemblies the script actually uses, including required dependencies.
A successful restore or compile does not prove that the execution environment has every runtime dependency. NuGet selects package assets according to the package contents, target framework, and project’s package-management format; it is not a blanket SSIS deployment mechanism. Microsoft describes external assembly references in the Script Task documentation, but that guidance does not promise that adding a reference embeds every dependency in an SSIS package.
Check framework compatibility before restoring or copying DLLs
The first question is whether the package contains an assembly compatible with the Script Task environment. Microsoft states that “Currently we dont support .NET Core and .NET standard assembly references.” A package’s availability on NuGet does not change that Script Task limitation. Review the package’s target-framework assets and confirm that the asset selected for your script is supported before trying to solve a runtime-loading error.
#1 Best Overall
If the package offers only .NET Core or .NET Standard assets, adding the DLL to the VSTA project or copying it beside the package does not make that asset supported. If it also offers a compatible .NET Framework asset, check that the project resolves and references that asset rather than assuming NuGet selected the one you need.
Inspect the package’s assets and dependencies
Look at the package contents and its dependency metadata, not just its display name or version. The NuGet .nuspec reference documents dependency declarations and assembly-reference metadata. Check which framework-specific assemblies the package provides and identify the dependencies needed by the selected asset.
Rank #2
- Separate compile-time assets from runtime assets; a package can provide different files for those roles.
- Account for transitive dependencies, not only the package you added directly.
- Check for native or reflection-loaded dependencies, which may not be found through ordinary static reference resolution.
- Do not assume a package layout or asset-selection behavior applies identically to every project format.
NuGet recommends one assembly per package, with dependencies expressed as package dependencies; this is a NuGet packaging recommendation, not a guarantee of SSIS deployment behavior. See Microsoft’s guidance on selecting assemblies referenced by projects and NuGet package asset layout.
Know whether the VSTA project uses PackageReference or packages.config
The project’s package-management format affects how NuGet selects and exposes assemblies. Do not treat PackageReference and packages.config as interchangeable when diagnosing a missing DLL.
Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minutePC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11| Project format | What NuGet does | What to verify for SSIS |
|---|---|---|
| PackageReference | Resolves a transitive dependency graph and selects compile and runtime assets. The resolved graph is recorded in project.assets.json. |
Confirm the selected compile and runtime assets are appropriate for the Script Task, and separately establish that needed runtime files are available to the SSIS execution process. The restore artifact is not proof of runtime availability. |
| packages.config | Packages commonly contribute assembly references from their lib folders, with reference resolution involved in copying managed dependencies. |
Check which assemblies were added as references and whether the required dependencies are available when the task runs; do not infer deployment from the package’s presence in the package list. |
Microsoft documents the distinctions in its pages for dependency resolution and the packages.config file format. In particular, PackageReference can select compile and runtime assets independently, while packages.config projects commonly use assemblies under lib. Neither description is an SSIS-specific promise to package every required file for execution.
Add compatible external references in the VSTA project
SSIS Script Task code is developed in VSTA. Microsoft documents adding external .NET assembly references to that project; use the project’s reference mechanism and verify that the reference points to a compatible asset. A reference that satisfies compilation is only one part of the deployment question: runtime dependencies still need to be found by the process running the package.
Microsoft also says Script Task scripts in SQL Server 2008 SSIS and later are precompiled. Precompilation should not be read as proof that all third-party dependencies are embedded or will load on another computer.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Plan for the actual execution machine
Microsoft’s Script Task documentation says VSTA must be installed on the computer where the package runs. That requirement does not establish that third-party assemblies from your NuGet package are installed there. Check the machine and process that actually execute the package, including whether each required managed, native, or dynamically loaded dependency is available to them.
Best Value
There is no single deployment location or procedure established for every combination of SQL Server, SSIS deployment model, VSTA version, and execution account. Avoid assuming that copying DLLs to a particular folder, placing them in the Global Assembly Cache, or changing a deployment property is universally correct. Verify the deployment method against the exact environment and supported Microsoft guidance for that version.
Troubleshoot a successful build followed by an assembly-load failure
- Identify the exact missing assembly. Use the runtime error to distinguish the package’s direct assembly from a transitive or dynamically loaded dependency.
- Check framework assets. Confirm that the selected assembly is compatible with the Script Task environment; NuGet restore success is not a compatibility check.
- Review the package graph and layout. Inspect dependency declarations and framework-specific assets, then account for runtime and reflection-loaded dependencies as well as compile references.
- Confirm the project format. Determine whether the VSTA project uses PackageReference or packages.config and check the corresponding asset and reference behavior.
- Validate the execution environment. Check VSTA installation and whether the SSIS execution process can access the required dependency files.
- Verify version-specific deployment guidance. Establish the SQL Server/SSIS version, deployment model, VSTA or Visual Studio version, and package target framework before applying a location-specific fix.
A 2021 Microsoft Q&A question described a user trying to use the same “.NetCore3.0 DLL” in an SSIS Script Task. It is an example of the compatibility problem, not evidence that current Script Task environments support that target: SSIS Script task and DLLs and .NetCore.
Information needed for a version-specific answer
To determine a safe deployment procedure for a particular package, establish the SQL Server/SSIS version, package deployment model, VSTA or Visual Studio version, package target framework, and the exact assembly-load error. Without those details, a universal “copy the DLL here” recipe would overstate what the documented behavior establishes.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.
Quick wins for a faster PC:
Scan for outdated or missing drivers - takes under a minuteDriver Scan →Clear out junk files and repair common Windows errorsFree Scan →Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →




