Usando .NET 2.0.'Rectángulo' no existe en el espacio de nombres 'System.Drawing'
System.Drawing
está en mi lista de referencias.
Aquí es mi using
declaración:
using System.Drawing;
Aquí está el código:
private static Rectangle rScreen;
Aquí está el error en esta línea:
Texto de error: El tipo o espacio de nombres el nombre 'Rectángulo' no existe en el espacio de nombres 'System.Drawing' (¿falta una referencia de ensamblado?)
¿Por qué?
EDIT: Añadido código de compilación:
Dictionary<string, string> dict = new Dictionary<string, string>();
dict.Add("CompilerVersion", "v3.5");
CSharpCodeProvider codeProvider = new CSharpCodeProvider(dict);
CompilerParameters parameters = new CompilerParameters();
{
parameters.ReferencedAssemblies.Add("System.Drawing.dll");
parameters.ReferencedAssemblies.Add("System.dll");
parameters.ReferencedAssemblies.Add("System.Core.dll");
parameters.ReferencedAssemblies.Add("System.Data.dll");
parameters.ReferencedAssemblies.Add("System.Data.Linq.dll");
parameters.ReferencedAssemblies.Add("System.DirectoryServices.dll");
parameters.ReferencedAssemblies.Add("System.Configuration.dll");
parameters.ReferencedAssemblies.Add("System.Web.dll");
parameters.ReferencedAssemblies.Add("System.Xml.dll");
parameters.ReferencedAssemblies.Add("System.Windows.Forms.dll");
parameters.ReferencedAssemblies.Add("System.Web.Services.dll");
parameters.ReferencedAssemblies.Add("System.ServiceModel.dll");
parameters.ReferencedAssemblies.Add("System.IdentityModel.dll");
parameters.ReferencedAssemblies.Add(string.Format(@"{0}{1}Microsoft.ReportViewer.Common.dll", AppDomain.CurrentDomain.RelativeSearchPath, @"\ReportViewer\"));
parameters.ReferencedAssemblies.Add(string.Format(@"{0}{1}Microsoft.ReportViewer.WebForms.dll", AppDomain.CurrentDomain.RelativeSearchPath, @"\ReportViewer\"));
}
CompilerResults results = codeProvider.CompileAssemblyFromSource(parameters, sources.ToArray());
try
{
ApexAssemblyManager.dynamicAssemblies.Add(hashKey, new DynamicAssemlby(results.CompiledAssembly));
return ApexAssemblyManager.dynamicAssemblies[hashKey].CreateInstance(typeName);
}
Todos los demás trabajos ReferencedAssemblies y han estado trabajando durante mucho tiempo. Esta es la primera vez que tengo un error así.
Me aseguré y comprobé dos veces que se ha agregado la referencia. Si trato de agregarlo nuevamente al proyecto, recibo un mensaje de que la referencia ya existe.
Gracias
¿Esto es con Visual Studio? ¿Obtienes un pequeño cuadrado rojo en la parte inferior derecha de la palabra 'Rectangle' en el editor con una corrección sugerida? ¿Puedes escribir 'System.Drawing.Rectangle' en su lugar y funcionará? – ja72
Compila bien en Visual Studio. Esto se ejecuta como compilado dinámicamente en otra aplicación que tiene la instrucción using en él. – user390480
a) intente con el alcance total del tipo yb) ¿es su declaración dentro del alcance de la instrucción 'using'? c) Edite la pregunta con una explicación de lo que se compila dinámicamente. – ja72