I am running some .NET .dlls  on Windows Server 2012. The .NET assemblies were compiled from C# code on OS X with Xamarin 4.0. (yeah I know weird setup- but I am a game developer)
In general they run perfectly, but when it comes to inspecting Exception information, it's not so good. I am trying to pull info out of an Exception object, but it's all empty. I also tried copying the .mdb files along with the .dlls, and made sure I was building in Debug, and with debug symbols.
For example this code
log.Error (ex.ToString ());
var st = new StackTrace(ex, true);
var frame = st.GetFrame(0);
var line = frame.GetFileLineNumber();
log.ErrorFormat ("st: {0}, frame: {1}, line: {2}", st.ToString (), frame.ToString (), line);
Generates output like this, just the method name, basically
System.NullReferenceException: Object reference not set to an instance of an object.
at Mindlube.CD3.RandomMatchMaker.ProcessMatchQueue() [ThreadFiber-1] ERROR Mindlube.CD3.App [(null)] - st:    
at Mindlube.CD3.RandomMatchMaker.ProcessMatchQueue(), frame: ProcessMatchQueue 
at offset 927 in file:line:column <filename unknown>:0:0, line: 0
Any suggestions for getting more detailed Exception information? Using Visual Studio on Windows is not currently an option because I don't have time to re-tool my entire dev environment. So don't say 'use VStudio' :)
 
     
    