Archivo por meses: febrero 2008

Hacer referencia a un control dentro de un formview

Para usar un control dentro de un formView es necesario encontrarlo y convertirlo desde el tipo control al tipo que es realmente el control. Ej:

TextBox ex=(TextBox )frmData.FindControl("TextBox1");
ex.text= DateTime.ToString();

Error No se pudo cargar viewstate

No se pudo cargar viewstate. El árbol de control en que se está cargando viewstate debe coincidir con el árbol de control que se utilizó para guardar viewstate durante la solicitud anterior. Por ejemplo, al agregar controles de forma dinámica, los controles agregados durante una devolución deben coincidir con el tipo y posición de los controles agregados durante la solicitud inicial.

Se soluciona agregando: EnableViewState=»false»  al tag Page de la vista de codigo de la pagina aspx.

Recuperar el id del ultimo registro insertado

Algo muy comun es querer saber el id del ultimo registro insertado, aca posteo un ejemplo de como hacer eso para una base de datos SQL Server en c#:

SqlConnection conn= new SqlConnection(
ConfigurationManager.ConnectionStrings["dbConn"].ConnectionString
);
string insertStr =
"INSERT INTO [tabla]([texto],[fecha]) VALUES(@texto,getDate())
;SELECT  Scope_Identity();";
SqlCommand cmd=new SqlCommand(insertStr,conn);
cmd.Parameters.Add("@texto", SqlDbType.NVarChar).Value="El texto va aca";
cmd.Connection.Open();
string ret=cmd.ExecuteScalar().ToString();
cmd.Connection.Close();

La parte clave esta en la sentencia Select Scope_Identity() del sql.

Equivalente de limit de mysql dentro del .net

No llegue a encontrar un equivalente directo del limit dentro de otra base de datos que no sea Mysql, pero el framework .net da la siguiente posibilidad para emular esa funcionalidad:

SqlDataSource sds = new SqlDataSource(
utils.getWebConfigConn("dbConnectionString"), 
"selec * from vendedores"
);
DataSourceSelectArguments sa = new DataSourceSelectArguments(10, 20);
DataView dv = (DataView)sds.Select(DataSourceSelectArguments .Empty);

Lo anterior traera las filas comenzando por la 11 y terminando en la 30 (como hace el limit del mysql) dentro del dataset que esta en dv.Table

Cambiar el navegador por defecto en .Net

Al instalar una máquina lo primero que hay que hacer es instalar el Firefox y ponerlo como navegador como defecto de windows, pero si luego instalamos el .Net pasa que agarra el Firefox como navegador y suele ser molesto porque el IDE no detecta cuando cerramos la pagina, por lo que es recomendable el IE. (articulo original)

Click derecho en cualquier pagina del proyecto

debugging1.jpg

Click en Add si se quiere agregar un navegador a la lista

debugging2.jpg

Elegir cual se quiere setear como navegador predeterminado

debugging3.jpg