Archive for the ‘ asp.net ’ Category

Funcion isNumeric en vb.net

Tratando de validar si una variable era númerica en vb.net me tope con que no encontraba la función isnumeric. Despues de buscar e investigar un poco me percate que si quería usarla debía incluir “microsoft.visualbasic” en los Imports.
Si al final no deseas utilizar este namespace puedes validar si un valor es númerico con el siguiente código:

Public Function IsNumeric(ByVal str As String) as boolean
Dim r As Regex = New Regex(“\d+”)
Dim m As Match = r.Match(str)
If (m.Success) Then
Return True
End If
Return False
End Function

Como agregar un javascript de confirmación en asp.net

Si queremos por ejemplo eliminar un registro de un gridview o eliminar datos de un formulario, lo más normal es solicitar al usuario si realmente desea realizar este borrado.

Para esto debemos asociar el boton que dispara el evento de eliminar un javascript que haga la pregunta.
Esto lo debemos hacer en el page_load

If Not IsPostBack Then
Me.btn_yes.Attributes.Add(“onclick”, _
“return confirm(‘Esta seguro?’);”)
end if

Si la persona seleccione no el evento click del botón no se ejecutará.

Como especificar el src de un iframe por código en asp.net

Si en alguna ocasición tienes la necesidad de utilizar un iframe en tu código .net y necesitas dinámicamente a través del código indicarle el atributo src de tu iframe deberás hacer lo siguiente:

En el lado del aspx creamos el iframe

<IFRAME id=”ifrm_ds” scrolling=”auto” runat=”server” width=”996″ frameborder=”0″ height=”600″>
</IFRAME>

Y para asignarle el atributo del lado del código:

ifrm_ds.Attributes(“src”) = “enrutador.aspx”

Con esto podrás dirigir tu iframe a cualquier url que desees.

Como usar “sorting” y “paging” en un gridview

Si tratas de usar sorting y paging a la vez en un gridview el sistema de devolverá un error como este:

“The GridView ‘GridViewID’ fired event PageIndexChanging which wasn’t handled.”

Lo que se debe hacer en el gridview es agregar los llamados que manejarán los eventos:

<asp:GridView ID=”gridView” OnPageIndexChanging=”gridView_PageIndexChanging” OnSorting=”gridView_Sorting” runat=”server” />

Y en el código las funciones:

private string ConvertSortDirectionToSql(SortDirection sortDirection)
{
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)
{
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();
}
}

Como agregar un javascript: a un gridview

Utilizando un gridview debía utilizar un link javascript tipo “javascript:mi_funcion(‘xxxx’)” para abrir un pop-up con el detalle del registro que estaba seleccionando.

El problema es que usar datanavigateurlformatstring=”javascript:mi_funcion(‘{0}’)” no funciona por un error y me vi obligado a utilizar el siguiente código:

<asp:TemplateField>
<ItemTemplate>
<asp:HyperLink ID=”HyperLink1″ runat=”server”
NavigateUrl=’<%# “javascript:ver_documento(” + chr(39) + Eval(“variable”) + chr(39) + “)” %>’
Text=”View”>
</asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>

Espero les sea de utilidad.

Cómo obtener el datakey de un gridview con un boton (asp:ButtonField)

Primero que todo debemos crear el botón dentro del gridview y verificar que podamos ejecutar llamados desde él.
Para esto realizamos lo siguiente:

En el gridview agregamos estos parámetros:

AutoGenerateColumns=”False”
onRowCommand=”funcion_a_ejecutar”

Seguidamente en el cuerpo del gridview

Ya que tenemos esto creamos la funcion funcion_a_ejecutar de la siguiente forma:

Public Sub funcion_a_ejecutar(ByVal sender As Object, ByVal e As GridViewCommandEventArgs)
‘obtengo la linea del gridview que fue cliquiada
Dim seleccion As GridViewRow
seleccion = DirectCast(e.CommandSource, GridView).Rows(e.CommandArgument)
‘obtengo el datakey de la linea que donde está el boton que cliquie…
lbl_test.Text = migrid.DataKeys(seleccion.RowIndex).Value.ToString
End Sub

Espero les sea de utilidad a mi me costo un poco dar con el tema…

Como utilizar WebRequest a través de un proxy

Si tu acceso a internet es a través de un proxy que requiere de autenticación necesitaras configurar esta información para poder utilizar “WebRequest”.

Para hacer esto debes hacer lo siguiente:

Dim miproxy As New WebProxy(“ejemplo.dominio.local:8080″)

Dim nc As New NetworkCredential(“miusuario”, “micontraseña”, “eldominio”)
proxy.Credentials = nc

Dim miRequest As WebRequest
miRequest.Proxy = proxy

Como leer valores de configuración del web.config en Asp.net

El archivo web.config funciona como un repositorio de información que es accedidad por las páginas web. Algunos de los valores que podemos guardar son como por ejemplo las cadenas de conexión a la base de datos, lo cual nos permite una rápida modificación en el evento de que esta cambiase.

Este es una fracción del web.config:

<configuration>
<appSettings/>
<connectionStrings>
<add name=”BaseDatos” connectionString=”server=localhost;uid=sa;pwd=;database=ejemplo”/>
</connectionStrings >
</configuration>

Para poder leer esta información realizamos los siguiente:
En Vb.Net

Dim cnn As String
cnn = System.Web.Configuration.WebConfigurationManager.ConnectionStrings(“BaseDatos”).ConnectionString

En C#

string cnn;
cnn = System.Web.Configuration.WebConfigurationManager.ConnectionStrings["BaseDatos"].ConnectionString;

Como hacer que espere tu aplicación con un “wait” en vb.net

Si quieres que tu aplicación espere solo debes hacer un llamado a esta pequeña rutina:

Private Sub Wait(ByVal PMillseconds As Integer)

Dim TimeNow As DateTime
Dim TimeEnd As DateTime
Dim StopFlag As Boolean

TimeEnd = Now()
TimeEnd = TimeEnd.AddMilliseconds(PMillseconds)
StopFlag = False
While Not StopFlag
TimeNow = Now()
If TimeNow > TimeEnd Then
StopFlag = True
End If
Application.DoEvents()
End While

TimeNow = Nothing
TimeEnd = Nothing
End Sub

Saludos…

Como enviar un SMS desde Easy SMPP con Vb.Net (ejemplo)

He desarrollado una aplicación para envio de anuncios a través de SMS por lo que descargue easysmpp para efectuar esta labor.

Depués de un rato no pude encontrar un ejemplo del código al final pude armar la estructura y enviar el SMS.

Se debe primero registrar las tres librerías dll que vienen en el folder “tester”.

Seguidamente configurar en el page load la información del servidor de envio

Dim smppobj As New EasySMPP.SMSC
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
smppobj.SystemId = “ID”
smppobj.Password = “password”
smppobj.Port = “puerto”
smppobj.Host = “IP”
smppobj.Description = “TEST”
smppobj.SystemType = “test”
smppobj.AddrNpi = “0″
smppobj.AddrTon = “0″

End Sub

Para el envio del mensaje en podemos hacer un pequeño form que tenga un textbox y un botón de envio por lo que quedaría así:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
smppsend.AddSMSC(smppobj)
smppsend.Connect()
smppsend.SendSms(“50760060461″, “50760060461″, i_texto.Text)
smppsend.Disconnect()
End Sub

Espero le sea de utiliadad.