Я компилирую классы во время выполнения с использованием класса CodeDomProvider
. Это отлично работает для классов только с использованием System
имен:CompilerParameters.ReferencedAssemblies - Добавить ссылку на System.Web.UI.WebControls
using System;
public class Test
{
public String HelloWorld()
{
return "Hello World!";
}
}
Если я пытаюсь скомпилировать класс с помощью System.Web.UI.WebControls
хотя, я получаю эту ошибку:
{error CS0006: Metadata file 'System.Web.UI.WebControls' could not be found} System.CodeDom.Compiler.CompilerError
Вот отрывок из моего кода:
var cp = new CompilerParameters();
cp.ReferencedAssemblies.Add("System.Web.UI.WebControls");
Как ссылаться на пространство имен System.Web.UI.WebControls
?
Не работает для меня. Как вы думаете, я должен предоставить полный путь к сборке? Если да; как я могу сделать это динамически? – roosteronacid
Ah, System.Web.UI.WebControls.dll не существует - вместо этого классы в этом пространстве имен находятся в System.Web.dll. –