jueves, 1 de junio de 2017

Grid & Update panel y un error raro

Tengo un el tipo grid en un upate panel ,  cuando se pulsa el botón de consultar te lleva al detalle de la línea.

Unas veces me funciona bien y otras daba el error:

Uncaught Error: Sys.WebForms.PageRequestManagerServerErrorException: An unknown error occurred while processing the request on the server. The status code returned from the server was: 500

El problema estaba en número de datos, mi grid tenía 28.000 registros . 

La solución en mi caso:

<system.web>
<httpRuntime maxRequestLength="2097151" />
</system.web>

viernes, 26 de mayo de 2017

asp: MultiView problemas con el PostBack


Tenía un MultiView que se activaba con un menú. Me cree un control de usuario que tenía javascrpt que no funcionaba si no estaba situado en el primer view.

Mi código era
  <asp:UpdatePanel ID="UpdatePanel7" runat="server" UpdateMode="Conditional">
        <ContentTemplate>
                <asp:Menu ID="Menu1" runat="server" OnMenuItemClick="Menu1_MenuItemClick" Orientation="Horizontal" >
<Items>
                        <asp:MenuItem Text="View1" Value="0"  ></asp:MenuItem>
                        <asp:MenuItem Text="View2" Value="1" ></asp:MenuItem>
                        <asp:MenuItem Text="View3"Value="2"></asp:MenuItem>
                        <asp:MenuItem Text="View4"Value="3"></asp:MenuItem>
                    </Items>
                </asp:Menu>
                <asp:MultiView ID="MultiView1" runat="server"   ActiveViewIndex="0">
                    <asp:View ID="View1"  runat="server">
                        Vista 1
                    </asp:View>
                    <asp:View ID="View2"  runat="server">
                        Vista 2
                    </asp:View>
                     <asp:View ID="View3" " runat="server">
                        Vista 3
       </asp:View>
                       <asp:View ID="View5"  runat="server">
                        Vista 3
</asp:View>
                </asp:MultiView>
            </fieldset>
        </ContentTemplate>
    </asp:UpdatePanel>

La solución fue añadir al update panel  
        <Triggers>
            <asp:PostBackTrigger  ControlID ="Menu1"  />
        </Triggers>


Y todo funcionando ok 

viernes, 19 de mayo de 2017

Asp:Menu parpadeos extraños

Tenía un menú en la master page

  <nav id="menu_cab" class="">
                                  <a href="#header" id="nav_abrir" title="Ver Menú">Ver Menú</a>
                                  <a href="#" id="nav_cerrar" title="Ocultar Menú">Ocultar Menú</a>
                    <asp:Menu ID="NavigationMenu" runat="server" CssClass="menu" EnableViewState="false"
                        IncludeStyleBlock="false" Orientation="Horizontal"  
                        OnMenuItemClick ="NavigationMenu_MenuItemClick"   OnMenuItemDataBound="NavigationMenu_MenuItemDataBound"
                        DataSourceID="SiteMapDataSource1" MaximumDynamicDisplayLevels="2"   >
                    </asp:Menu>
                 </nav>


Tenía parpadeo extraños en el menú, cuando pulsaba alguna opción se veía durante unos segundos el tercer  sub-menu

A mí me función con poner

div.menu ul li ul { display: none; }



viernes, 5 de mayo de 2017

Text box mayúsculas/minúsculas


Si quieres que el usuario cuando introduzca el texto todo este en minúsculas o mayúsculas  se soluciona  con un estilo
<asp:TextBox ID="TextBox1" runat="server" Text="prueba" Style="text-transform: uppercase"></asp:TextBox>
<asp:TextBox ID="TextBox2" runat="server" Text="prueba" Style="text-transform: lowercase"></asp:TextBox>

Pero OjO esto es únicamente visual,  si lo quieres así que no se te olvide transfórmalo a la hora de guardarlo  en base de datos o querer trabajar con el dato
Textbox1.Text = textbox1.Text.ToUpper();

Textbox2.Text = Textbox2.Text.ToLower();

viernes, 28 de abril de 2017

Expresiones regulares .net


Las expresiones regulares son un método perfecto para hacer validaciones de cadena. El problema reside en definirlas bien.
Ya no tienes excusas para no hacer las pruebas correspondientes , instala
Regular Expression Tester Extension

viernes, 21 de abril de 2017

SharePoint CSOM -ServerLibraryVersion has not been initialized.

Un error tonto pero para volverse loc@

Tenia una app web con una prueba de llamada al sharepoint y decidí poner la función en mi dll real.

El mimos código y con las "mimas" librerías me daba el errror ServerLibraryVersion has not been initialized.

El problema lo tenia justo en en suponer que tenia las misma librerias, eran la mismas pero no de la misma versión



Mi problema estaba en que Microsoft.SharePoint.Client que tenia no era el 16.0 como en la imagen sino el 15.0

viernes, 10 de marzo de 2017

Documentación 1.1

Es complicado hacer una documentación del código, aunque no imposible ( siempre que todos los implicados pongan de su parte).

Tengo un varios proyectos que documentar y muchos de ellos hacen referencia a un servicio web.
Al activar la documentación, salen un monto de advertencias que indican que el sw no tiene sus correspondientes comentarios de código.   

Mirando por internet hay varias soluciones pero la que me parece mejor es añadir  en el fichero Reference.cs del servicio web
Al inicio del fichero : #pragma warning disable 1591

Al final del fichero: #pragma warning restore 1591


Desactivar la advertencia en todo el proyecto también es posible, pero es arriesgado en equipos no acostumbrados  a escribir documentación técnica 


Yo personalmente para sacar la documentación uso el Sandcastel