Concatenar texto a un campo de una tabla

Loli
19 de Julio del 2005
Como podría concatenar un texto a un campo de la tabla y que me lo muestre en un datagrid, o en su defecto como juntar dos columnas de un datagrid

Elph
19 de Julio del 2005
Lo mejor seria hacerlo en sql,
select cast(campo1 + campo2 as varchar(1000)) as campo3 from tabla.

Pero si tienes que hacerlo en codigo puedes crear una nueva DataColumn en la DataTable i definir como expresion la suma de las dos.
Tambien puedes hacerlo en el momento del bindeo.es decir si en tu pagina tienes algo asi
<%# DataBinder.Eval (Container.DataItem, "campo1")) %>
i
<%# DataBinder.Eval (Container.DataItem, "campo2")) %>
pasarlo a
<%# DataBinder.Eval (Container.DataItem, "campo1")) + DataBinder.Eval (Container.DataItem, "campo2")) %>

Loli
19 de Julio del 2005
He probado con lo que me has dicho pero no funciona.
El problema es que necesito concatenar la palabra "GARA" a un campo numérico de la tabla. El resultado debe ser GARA1, GARA2... GARAn.

jm
19 de Julio del 2005
segun mi experiencia la mejor manera de hacer lo que quieres es la siguiente:
-crea una funcion en el codigo de este estilo
public string ObtenerCampo(object oDataRow)
{
return "GARA" +
((DataRow)oDataRow)["campo1"].ToString();

}

-en el binding:
<%# ObtenerCampo(Container.DataItem); %>

adapatandolo a tu codigo deberia funcionar sin problemas.

usa solo DataBinding.Eval cuando vayas a mostrar un campo tal cual, para cualquier cosa mas compleja usa una funcion

Loli
19 de Julio del 2005
Muchas gracias, problema solucionado.