Mi chiedo se qualcuno di voi ha qualche idea sul problema che sto seguendo.Chiamare System.Diagnostics.Trace da un plug-in Dynamics CRM 2011
Ecco un codice plug-in molto semplice.
namespace Demo.DebugTraceBlog
{
public class TraceAndDebugDemo : IPlugin
{
public void Execute(IServiceProvider serviceProvider)
{
Trace.WriteLine("Started Plugin");
Trace.WriteLine("Plugin Working");
Trace.WriteLine("Ending Plugin");
}
}
}
sto utilizzando DebugView (http://goo.gl/YRfus) per visualizzare i messaggi Trace stato scritto. Quando eseguo questo codice come plug-in in esecuzione nella sandbox ottengo i risultati che mi aspetto: tre righe appaiono in DebugView e se collego VS al processo di lavoro Sandbox vedo tre righe scritte nella finestra Output. Ora quando cambio la modalità di isolamento su none e lo faccio girare nel processo W3WP.EXE non ottengo alcun output su DebugView e quando collego a W3WP.EXE posso impostare un breakpoint per convalidarlo è in esecuzione ma non lo faccio ottiene qualsiasi output nella finestra Output.
Qualsiasi idea del motivo per cui si sta verificando e su come posso ignorare la causa e forzare l'esecuzione di non sandbox come previsto. Posso fare alcune congetture su ciò che ha a che fare con l'esecuzione dei processi di IIS CRM e che il CRM sta sopprimendo la scrittura di Trace - Ho usato specificamente Trace invece di Debug nel tentativo di evitare il problema, ma senza fortuna.
So che posso usare ITracingService ma che non soddisfa il mio attuale requisito.
On-premise o on-line? Non sono sicuro se è importante, ma è bello saperlo. –
Locale sincrono. On-line può essere eseguito solo nella sandbox e Trace funziona perfettamente nella sandbox. – Nicknow
Ho preso jack ... mi dispiace. Ho avuto uno sparo ma ho capito che non è vero. –