If you want to make sure that you aren’t using any of the restricted APIs before you deploy your solution to a sandbox environment, manually reference your project against:
[SharePoint Root]\UserCode\assemblies\Microsoft.SharePoint.dll
If your code compiles, then you’re pretty safe!
NEVER DEPLOY code with this Microsoft.SharePoint.dll reference, instead reference the Microsoft.SharePoint.dll in
[SharePoint Root]\ISAPI folder.
From the SharePoint 2010 book I’m reviewing
Advertisement

Although I understand the concept of sandboxed solutions and their advantages it’s a real pain programming them. E.g. if you create an event receiver how do you log errors? The DiagnosticService isn’t available… and errors aren’t shown at the browser saying that I need to disable “RemoteOnly” in the web.configs custom error settings which didn’t work.
Do you know a better solution?