Web Service Portability (part 2)

Another thing that caught me out today… I deployed a couple of web services, and web form consumers of those services to a “Live” environment today, and was getting some strange behaviour. Because of the limited amount of fault tracking code in my application, I spent several hours trying to figure out what my actual error was.

Once I added some more debugging code, I was able to determine the problem, and that it stemmed from a simple source.

The error message I was presented with was
"File or assembly name <random characters>.dll, or one of its dependencies, was not found"

After a quick Google, I discovered that the service account that IIS runs as was not allowed read/write access to the temp directory. As a result it was unable to download executable code from the web service, and therefore died. Lots of resources say to ensure that the ASPNET account has privileges on windows\temp, but you should check that the account really is ASPNET, and that your system temp folder is windows\temp.