BadWordsTextBox
di Giuseppe Marchi
Data di pubblicazione: 15/11/2004
Voto della community: 4,00
(Votanti: 1)
Chi non si č mai trovato di fronte al problema di gestire il "vocabolario", a volte fin troppo colorato, utilizzato dai nostri utenti in un nostro forum o guestbook?!
Io faccio parte sicuramente di quell'insieme di persone e, per mia comoditā, ho creato un piccolo UserControl, estendendo la classe System.Web.UI.WebControls.TextBox, che, sfruttando al massimo le opportunitā che offre l'ereditarietā del modello ad oggetti di C#.NET, effettua un controllo su quello che č il testo d'input inserito dall'utente. Estendendo una classe del Framework, creo in pratica un suo "figlio" che contiene tutte le caratteristiche del padre (metodi, propietā ed eventi ...) con la possibilitā di aggiungerne delle proprie. Per estendere una classe uso questa sintassi: public class controlloFiglio : controlloPadre
Nel mio caso ho semplicemente aggiunto un metodo (che ho chiamato "maleducato"), che ritorna un valore booleano se trova una parolaccia nel testo passatogli come parametro. In questo modo posso semplicemente controllare la correttezza del linguaggio chiamando il mio metodo e vedere se il suo valore di ritorno č vero o falso...
if(txt.maleducato(txt.Text))
Al suo interno, il metodo "maleducato", elimina tutti quei caratteri che di solito vengono usati per aggirare questo tipo di meccanismi, ed infine controlla che nel testo non siano presenti tutte quelle parole che secondo voi non vanno usate, prendendole da un "array di parolacce", precedentemente definito.
namespace Peppe.Articoli
Una volta creata la dll (il codice di creazione lo trovate nel file make.bat presente nel file di sorgenti da scaricare) e messa nella directory /bin, basta creare una WebForm ASP.NET di prova nella quale inserire il riferimento al namespace dovč presente la classe che vogliamo utilizzare.
<%@ Page Language="C#" Debug="true" %>
Per scaricare lo zip con il sorgente di questo articolo utilizzare il link che segue:
|
||||||||||||||||||||||||