Tengo esta función que obtiene el archivoData como una matriz de bytes y una ruta de archivo. El error que recibo es cuando intenta establecer el archivo Info en el código bewlo. Se dice 'Ruta físicas determinadas, Virtual Path espera'convertir de la ruta física a la ruta virtual
public override void WriteBinaryStorage(byte[] fileData, string filePath)
{
try
{
// Create directory if not exists.
System.IO.FileInfo fileInfo = new System.IO.FileInfo(System.Web.HttpContext.Current.Server.MapPath(filePath)); //when it gets to this line the error is caught
if (!fileInfo.Directory.Exists)
{
fileInfo.Directory.Create();
}
// Write the binary content.
System.IO.File.WriteAllBytes(System.Web.HttpContext.Current.Server.MapPath(filePath), fileData);
}
catch (Exception)
{
throw;
}
}
Al depurar ella, está proporcionando la rutaArchivo como "E:\\WEBS\\webapp\\default\\images\\mains\\myimage.jpg"
. Y el mensaje de error es
'E:/WEBS/webapp/default/images/mains/myimage.jpg' is a physical path, but a virtual path was expected.
Además, lo que está provocando que esto suceda es la siguiente llamada
properties.ResizeImage(imageName, Configurations.ConfigSettings.MaxImageSize, Server.MapPath(Configurations.EnvironmentConfig.LargeImagePath));
se puede saber por qué los votos negativos Soy nuevo en C#. Sea considerado – user710502
¿Entiende lo que 'MapPath' hace y lo que su código está tratando de hacer? – SLaks
Este es el código existente, no lo escribí ... ¿Tengo entendido que MapPath es una función que tomará la ruta virtual y la traducirá a la ruta del servidor ?, pero de nuevo, soy nuevo y tal vez pase por alto lo obvio. Sin ser grosero, vine a este foro para hacer una pregunta de la que no estoy seguro. No hay necesidad de votar abajo ... Me imagino que esto es lo que los foros son para no? De lo contrario, voy a ir perfil por perfil y hacer un montón de votos negativos solo por el diablo – user710502