vbdotnet.it

Tricks & tips, workaround, forum and ideas with .Net

About the author

Enrico Rossini è il gestore di questo blog.
E-mail me Send mail

Recent posts

Recent comments

Contributi

Best 6 ~ 6 users ~ 6 comments

Info legali

Le opinioni espresse in questo blog sono strettamente personali e ogni persona è responsabile dei commenti che inserisce. I marchi citati sono delle rispettive aziende.

© Copyright 2010

Advertising


Redirect con ScriptManager

È capitato anche a te che hai bisogno di eseguire un redirect da una pagina asp.net ma in questa c'è un controllo Ajax? Beh, a me capita e divento matto a trovare una soluzione per poter eseguire il redirect visto che il classic comanda server.redirect non funziona. Ecco qui due righine di codice che ti aiuteranno:

Dim script As String = ("window.location = '" + (redirectURL + "';"))
ScriptManager.RegisterStartupScript(Page, Page.GetType(), Guid.NewGuid().ToString(), script, True)

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Categories: asp.net
Posted by enrico on Wednesday, July 30, 2008 5:26 PM
Permalink | Comments (0) | Post RSSRSS comment feed

Usare Index Search per cercare con ASP.NET

Non vi siete mai chiesti a cosa serve Microsoft Index Search e come poterlo utilizzare nel vostri siti web? Io questa domanda me la sono posta e ho trovato un interessante utilizzo di questa funzionalità. Sostanzialmente Index Search indicizza un disco o una cartella specifica del vostro server e ne crea un catalogo che è possibile interrogare e trovare quindi tutti i documenti che state ricercando.

Come si fa ad implementare una soluzione?
Semplicissimo! Dal server aprire Gestione computer dal Pannello di controllo | Strumenti di amministrazione. Sotto il menu Servizi e applicazioni, aprire Servizi di indicizzazione. Per creare intanto un catalogo dai nostri documenti che potranno essere ricercati dalla nostra applicazione web, cliccare il tasto destro e scegliere Nuovo | Catalogo. Compare quindi una finestra nel quale inserire il nome del catalogo ed il percorso da indicizzare. Salvando questi dati sotto Servizi di indicizzazione si visualizzerà il nome del nuovo catalogo (nel caso dell'immagine qui a fianco Intranet). Fin da subito è possibile vedere nel catalogo due cartelle di nome Directory e Proprietà e un file asp del nome Cerca nel catalogo. Ovviamente è necessario un po' di tempo affinché i file presenti nella cartella scelta siano indicizzati completamente.

Utilizzo del catalogo
Creare una pagina ASPX nel quale inserire il seguente codice:

    <table id="Table3" cellspacing="1" cellpadding="1" width="95%" align="right" border="0">
        <tr>
            <td>
                <p>
                    &nbsp;</p>
                <p>
                    <asp:label id="Label1" runat="server">Ricerca</asp:label>
                    <asp:textbox id="txtSearch" runat="server"></asp:textbox>
                    <asp:button id="btnSearch" runat="server" text="Search"></asp:button>
                    <br>
                    <br>
                    <asp:label id="lbl" runat="server"></asp:label>
                </p>
            </td>
        </tr>
    </table>

All'interno del codice è necessario importare i riferimenti a System.Data e System.Data.OleDb e le seguenti righe di codice:

    Dim cnt As Integer

    Private Sub btnSearch_Click(ByVal sender As Object, ByVal e As System.EventArgs)
        ' crea la connessione con il catalogo di Index Search 
        Dim odbSearch As New System.Data.OleDb.OleDbConnection()
        Dim cmdSearch As New System.Data.OleDb.OleDbCommand()
        odbSearch.ConnectionString = "Provider=""MSIDXS"";Data Source=""[Catalog name]"";"
        cmdSearch.Connection = odbSearch

        Try
            cmdSearch.CommandText = "select doctitle, filename, vpath, rank, characterization from scope() " & _
                                    "where FREETEXT(Contents, '" + txtSearch.Text + "') and filename <> 'search.aspx' order by rank desc "
            odbSearch.Open()
            Try
                Dim rdrSearch As OleDbDataReader = cmdSearch.ExecuteReader()
                lbl.Text = ""
                While rdrSearch.Read()
                    cnt += 1
                    getpagelink(rdrSearch(1).ToString())
                End While
            Catch ex As Exception
                lbl.Text = ex.Message
            End Try
            odbSearch.Close()
        Catch ex As SqlException
            lbl.Text = ex.Message.ToString()
            odbSearch.Close()
        End Try
    End Sub

    Public Sub getpagelink(ByVal srcfile As String)
        Dim temp As String = (cnt).ToString() + ".) " + srcfile
    End Sub

Se nella cartella sono presenti file di Word, Excel, PowerPoint o testo non ci sono problemi. Se però avete dei file PDF non è finita qui: è necessario installare un componente che si può scaricare gratuitamente da sito Adobe che estende le funzionalità di Index Search consentendo di indicizzare anche i file PDF. Il sito per effettuare il download è il seguente http://www.adobe.com/support/downloads/thankyou.jsp?ftpID=2611&fileID=2457 (che si trova in allegato).

ifilter60.exe (9,67 mb)

Currently rated 5.0 by 1 people

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Categories: asp.net
Posted by enrico on Tuesday, July 29, 2008 12:28 AM
Permalink | Comments (0) | Post RSSRSS comment feed

RegEx: controllo date

Ogni volta che devo controllare una data all'interno di un programma, non trovo mai un Regular Expression che mi consenta di farlo. Dopo un po' di tentativi me no sono fatta una che consente di validare i formati di data più frequenti. La regular expression è la seguente:

^(?:(?:31(\/|-|\.)(?:0?[13578]|1[02]))\1|(?:(?:29|30)(\/|-|\.)(?:0?[1,3-9]|1[0-2])\2))(?:(?:1[6-9]|[2-9]\d)?\d{2})$|^(?:29(\/|-|\.)0?2\3(?:(?:(?:1[6-9]|[2-9]\d)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))$|^(?:0?[1-9]|1\d|2[0-8])(\/|-|\.)(?:(?:0?[1-9])|(?:1[0-2]))\4(?:(?:1[6-9]|[2-9]\d)?\d{2})$

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Categories: RegEx
Posted by enrico on Monday, July 28, 2008 9:31 PM
Permalink | Comments (0) | Post RSSRSS comment feed

Benvenuto su vbdotnet.it

vbdotnet.it è un sito in cui metterò le soluzioni a dei problemi che ho incontrato nello sviluppare programmi con .NET in generale e più precisamente con vb.net e asp.net.

Currently rated 4.6 by 4 people

  • Currently 4.55/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Categories: Generalità
Posted by enrico on Monday, July 28, 2008 8:00 PM
Permalink | Comments (0) | Post RSSRSS comment feed