2012-11-08 19 views
7

Ho cercato di utilizzare Roslyn per analizzare un file di soluzione e aggiungere a livello di codice un riferimento di assembly personalizzato a ciascun progetto nella soluzione.Come aggiungere un riferimento di assembly a un progetto al livello di programmazione?

Ho provato ad utilizzare il seguente frammento di codice per fare lo stesso:

//The name of the DLL is customLib.dll 
var reference = MetadataReference.CreateAssemblyReference("customLib"); 
project = project.AddMetadataReference(reference); 

Tuttavia, esso rileva un FileNotFoundException durante la creazione del MetadataReference.

Quindi, la mia domanda è: Come specificare il percorso in cui Roslyn deve verificare la dll specificata?

Grazie.

risposta

11

MetadataReference.CreateAssemblyReference viene utilizzato per ottenere riferimenti agli assembly nel GAC. Prova questo:

project = project.AddMetadataReference(new MetadataFileReference("<path>")); 
+0

Grazie Jason. Ha funzionato. – jithinpt

Problemi correlati