问题
I've got a Visual Studio 2013 class library project, directory structure like this:
\MyClassLibraryProject
\ExternalLibraries
3rdPartyLib.dll
\bin
\Debug
\Release
etc.
Inside ExternalLibraries I copied some 3rd party assemblies which I then referenced from the project (Copy local = true). I compile the project and in my Release directory I of course see my MyClassLibraryProject.dll and the 3rd party DLLs like 3rdPartyLib.dll, etc.. Good so far.
Then I have another project (Console app - Azure webjob) from which I add a reference to the \MyClassLibraryProject\bin\Release\MyClassLibraryProject.dll (Copy local = true). It looks like this:
\MyWebjob
\bin
\Debug
MyWebJob.exe
MyClassLibraryProject.dll
3rdPartyLib.dll
So as you can see, when I added a reference to MyClassLibraryProject.dll (with Copy local = true), it also copied over it's dependent assembly 3rdPartyLib.dll. Good so far.
However, when publish the webjob project to Azure (right-click Project, Publish...) 3rdPartyLib.dll is not deployed. As a result, the webjobs dashboard complains it can't be found and of course the webjob doesn't execute.
Is this user error or something else?
回答1:
It's an issue. You need to manually deploy or add the dependencies to the webjob via nuget.
Look at this Relevant dependencies (DLL) not being copied when deploying using Visual Studio 2013
来源:https://stackoverflow.com/questions/25950660/some-assemblies-not-being-included-when-deploying-azure-webjobs-from-visual-stud