Foros del Web » Programación para mayores de 30 ;) » .NET »

Cannot implicitly convert type 'string[]' to 'string' c#

Estas en el tema de Cannot implicitly convert type 'string[]' to 'string' c# en el foro de .NET en Foros del Web. hola a todos... les cuento trato de hacer una validacion de un formulario con imagenes es decir muestro una imagen y deben ingresar, el mismo ...
  #1 (permalink)  
Antiguo 08/09/2009, 08:14
Avatar de jahman  
Fecha de Ingreso: noviembre-2003
Ubicación: Oslo
Mensajes: 230
Antigüedad: 20 años, 5 meses
Puntos: 0
Exclamación Cannot implicitly convert type 'string[]' to 'string' c#

hola a todos...

les cuento trato de hacer una validacion de un formulario con imagenes es decir muestro una imagen y deben ingresar, el mismo sistema que tiene google, todo bien el problema es que me trae "nombreimagen.jpg" ademas de eso le trato de hacer un Split para solamente agarrar el nombre de la imagen para luego compararla.

Código:
string path = Server.MapPath("~/Images/ConfirmImage/");
            string[] files = Directory.GetFiles(path);
            Random r = new Random();
            FileInfo fi = new FileInfo(files[r.Next(0, files.Length)]);
            ContImage.ImageUrl= "~/Images/ConfirmImage/"+ fi.Name;
            //char[] delimit = new char[] { '.' };
            ConfirmImage.Text = fi.Name.Split(new Char[] { '.' });
el error que muestra es.

Código:
Compiler Error Message: CS0029: Cannot implicitly convert type 'string[]' to 'string'

Source Error:

Line 185:            ContImage.ImageUrl= "~/Images/ConfirmImage/"+ fi.Name;
Line 186:            //char[] delimit = new char[] { '.' };
Line 187:            ConfirmImage.Text = fi.Name.Split(new Char[] { '.' });
Line 188:            
Line 189:
  #2 (permalink)  
Antiguo 08/09/2009, 08:44
Avatar de Peterpay
Colaborador
 
Fecha de Ingreso: septiembre-2007
Ubicación: San Francisco, United States
Mensajes: 3.858
Antigüedad: 16 años, 8 meses
Puntos: 87
Respuesta: Cannot implicitly convert type 'string[]' to 'string' c#

El error es muy claro

ConfirmImage.Text = fi.Name.Split(new Char[] { '.' });

fi.Name.Split(new Char[] { '.' }); regresa un array no un string o eliges correctamente algo como

ConfirmImage.Text = fi.Name.Split(new Char[] { '.' })[0]; // retorna la primer substring antes del primer punto.
__________________
Curso WF4
http://cursos.gurudotnet.com/ DF
Aprende HTML5
  #3 (permalink)  
Antiguo 08/09/2009, 08:45
 
Fecha de Ingreso: septiembre-2006
Mensajes: 328
Antigüedad: 17 años, 8 meses
Puntos: 3
Respuesta: Cannot implicitly convert type 'string[]' to 'string' c#

El problema esta en que fi.Name .Split te retorna un array de Strings (String[]), mientras que ConfirmImage.Text solo toma un string.

Por que no intentas con:
Código:
String myStringArray[] =  fi.Name.Split(new Char[] { '.' });
ConfirmImage.Text = myStringArray[0]
P.S.: Lamentablemente no se mucho C# y ese codigo probablemente no funcione pero es para que cojas la idea. En Visual Basic el código sería muy similar:

Código:
Dim myStringArray() as String =  fi.Name.Split(new Char[] { '.' })
ConfirmImage.Text = myStringArray(0)
  #4 (permalink)  
Antiguo 09/09/2009, 02:24
Avatar de jahman  
Fecha de Ingreso: noviembre-2003
Ubicación: Oslo
Mensajes: 230
Antigüedad: 20 años, 5 meses
Puntos: 0
Respuesta: Cannot implicitly convert type 'string[]' to 'string' c#

bueno gracias sr Peterpay tal cual como ud lo dijo ahi estaba el error..
gracias tambien a pedro_cesar.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:33.