Bienvenidos

Recuerda que tus comentarios son importantes y recuerda agradecer si te fue útil algun artículo publicado aquí.

L1f3 15 a D@nc3 Flo0r

viernes, 16 de febrero de 2007

The GridView fired event PageIndexChanging / Sorting which wasn't handled.



private string ConvertSortDirectionToSql(SortDirection sortDireciton)
{
string newSortDirection = String.Empty;

switch (sortDirection)
{
case SortDirection.Ascending:
newSortDirection = "ASC";
break;

case SortDirection.Descending:
newSortDirection = "DESC";
break;
}

return newSortDirection
}

protected void gridView_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
// Add here your method for DataBinding
BindGridControl();


gridView.PageIndex = e.NewPageIndex;
gridView.DataBind();
}

protected void gridView_Sorting(object sender, GridViewSortEventArgs e)
{
DataTable dataTable = gridView.DataSource as DataTable;

if (dataTable != null)
{
DataView dataView = new DataView(dataTable);
dataView.Sort = e.SortExpression + " " + ConvertSortDirectionToSql(e.SortDirection);

gridView.DataSource = dataView;
gridView.DataBind();
}
}

lunes, 12 de febrero de 2007

Guargar en BD los datos de un checkboxlist con un FOR

Esto es si queremos guardar en una BD todos los datos seleccionados en un CheckBoxList, utilizando un for.

protected void Button1_Click(object sender, EventArgs e)
{
int i;
for (i = 0; i < CheckBoxList1.Items.Count - 1; i++)
{
if (CheckBoxList1.Items[i].Selected)
{
objcmd = new SqlCommand("insert_Hospital_Copa", objconn);
objcmd.CommandType = CommandType.StoredProcedure;
objcmd.Parameters.AddWithValue("@hospital_id", GridView1.SelectedDataKey.Value);
objcmd.Parameters.AddWithValue("@copa", CheckBoxList1.Items[i].Text);
objconn.Open();
objcmd.ExecuteNonQuery();
lblmsg.Text = "Los datos han sido insertados";
objconn.Close();
}
}
}

jueves, 1 de febrero de 2007

la dll de AJAX existe en dos directorios

The type 'xxxx' exists in both '...\v2.0.50727\Temporary\....xxx.dll' and '...\v2.0.50727\Temporary\...yyy.dll'
Location:
BlogsMäx's blog

Posted by: m.unterauer
01.03.2006
This error occurs, if you have declared a class twice in your application (in a referenced assembly, somewhere in your app_code directory, or anywhere else in your app).In my case I had a prior compiled version (a dll) of the web app itself in the bin directory, which is not allowed any more. -> delete all compiled versions of all web applications (the app itself and referenced web apps) from the bin directory !!If you have to have the same classname multiple times within your application (e.g a class "DataAccess" within each module subfolder in the app_code directory, you could do the following:1) Give each class a different namespace (e.g. MODULENAME.DataAccess)2) Mark the classes as partial classes (!! this does not work if the partial classes are spread accross different subfolders of the app_code dir which are marked as codeSubDirectory in the web.config. The reason is, that in this case, each subfolder results in a different assembly and partial classes over multiple assemblies are not allowed. Also see my blog entry for creating multiple assemblies from the app_code directory !!)

jueves, 11 de enero de 2007

@@Identity

@@Identity
Many TSQL books show you how to use @@Identity to get the identity of the most recently added row. Many articles online, or in magazines show the same. What you might not know is that it is potentially a source for some very hard to trace bugs in your application.
@@Identity is potentially a very, very bad thing! In almost every case, you should use scope_identity() instead.
Why? @@Identity returns the most recently created identity for your current connection. When you first use it, it might be fine. Until someone adds a trigger. If the trigger causes another identity to be created, guess which identity you'll get in your call to @@Identity? Not nice.
scope_identity() is much nicer. It gives you what you're expecting.

SELECT SCOPE_IDENTITY() at the end of the query

domingo, 17 de diciembre de 2006

Querystring por el gridview

Asi se configuran las propiedades.. recuerda hacer un campo Hyperlink ;)


headertext="Order ID"/>


headertext="Product ID"/>


datatextformatstring="{0:c}"
datanavigateurlfields="ProductID"
datanavigateurlformatstring="~\details.aspx?ProductID={0}"
headertext="Price"
target="_blank" />


headertext="Quantity"/>

Columna Seleccionada en un grid

Esto es la forma de pasar a un textbox, el valor de una columna en especifico de una fila seleccionada en un Grid View


textbox1.Text = GridView1.SelectedRow.Cells[1].Text.ToString();

*en este caso estamos seleccionando el valor de la fila seleccionada con la columna 2, porque el conteo de las columnas comienza en 0