ReSharper 2024.1 Help

Code inspection: Symbol from module that might be missing at runtime

This inspection draws your attention to the fact that you are using a symbol that will not be by default present in the build artifacts. If you have build/deploy scripts or other mechanisms that ensure this symbol's module will be loaded at runtime, you can ignore this warning.

Here is why this happens:

MSBuild allows marking project references with the CopyLocal flag set to false, and this is recommended for large projects:

For large projects you should avoid setting the CopyLocal flag to True for references. When files are marked to be copied locally, every project that references that project will get a copy of its copy local references.

The CopyLocal flag is set to false by adding <Private>False</Private> to the Reference or ProjectReference section of the .csproj/.vbproj file, which means that the .dll of the referenced project will not be copied to the output folder and the symbols from this project will not be available at runtime by default.

As mentioned above, your setup may use other mechanisms to copy the target .dlls to the output, in which case this warning can be safely ignored.

Last modified: 11 February 2024