21 messaggi dal 30 maggio 2007
Mi sono fatto un'applicazione in asp.net che mi crea delle playlist a seconda dei scelte fatte dell'utente...
ora mi serve un qualcosa che mi consenta di caricare una playlist a seconda della data associatagli nel database , questa applicazione deve interagire con il windows media service e ogni giorno andare a controllare sul database se cè un record con la data odierna corrispondente a quella del record e far caricare al windows media service la playlist corrispondente.
Cosa mi conviene fare? creare un windows service o un'applicazione windows?
come posso fare per controllare ogni giorno a ore prestabilite il database?
sono abbastanza nuovo al mondo asp.net/c#, quindi ho molti interrogativi e dubbi
501 messaggi dal 09 giugno 2006
Contributi
Ciao.

Un servizio di Windows potrebbe andare bene se non fosse che forse è anche troppo per quello che ti serve. Molto probabilmente te la cavi scrivendo una Console Application in .NET e schedulandola nello Task Scheduler di Windows. Questa seconda soluzione è anche più semplice da distribuire e mantenere.

Se hai la necessità di interagire con lo Task Scheduler ti segnalo questa libreria (disponibile in sorgente) scritta da Eduardo A. Morcillo:

http://www.mvps.org/emorcillo/en/code/shell/tasksched.shtml


Ciao.

.:. Marcello Rutter .:.
21 messaggi dal 30 maggio 2007
Ieri effettivamente ho provato a fare una applicazione da console e usare lo scheduler di win2003 per gestirne l'avvio e effettivamente fa quello che mi serve(ogni giorno lancia l'applicazione a console la quale mi va a controllare sul database se ci sono playlist in programma per quel giorno e se presenti me le va a caricare sul wmserver e mi da lo start al punto di pubblicazione in broadcast) anche perchè valutando bene un possibile servizio win ho trovato di utile solo la classe timer che però per il mio utilizzo non andava bene, per le mie poche conoscenze molto meglio lo scheduler di win.
Grazie anche per il link ora me la guardo bene..

una domanda che non centra con questo thread, ho bisogno di inserire in un file di testo una nuova linea in una data posizione(esattamente alla 4°riga) facendo scorrere tutte le linee successive, qualè il metodo piu veloce?
Modificato da dididj il 08 giugno 2007 12.27 -
501 messaggi dal 09 giugno 2006
Contributi
Ci sono diverse soluzioni, dipende un po' dalla dimensione del file. Se il file è di piccole dimensioni, diciamo al massimo di qualche Mb, puoi usare il seguente codice:

        Dim filePath As String = "IL_MIO_FILE.TXT"
        Dim buffer As New List(Of String)

        buffer.AddRange(IO.File.ReadAllLines(filePath))

        buffer.Insert(3, "NUOVA RIGA - INDICE 3 EQUIVALE ALLA POSIZIONE 4")

        IO.File.WriteAllLines(filePath, buffer.ToArray())


Se invece il file è di grandi dimensioni è preferibile la seguente soluzione:

        Dim filePath As String = "IL_MIO_FILE.TXT"
        Dim filePathBak As String = "IL_MIO_FILE_BAK.TXT"

        IO.File.Move(filepath, filePathBak)

        Dim sr As New IO.StreamReader(filePathBak)
        Dim sw As New IO.StreamWriter(filePath)

        Dim conta As Integer = -1

        Do While sr.Peek() > -1
            conta += 1
            Dim linea As String = sr.ReadLine()
            If conta = 3 Then
                sw.WriteLine("SCRIVO LA NUOVA RIGA 4")
            End If
            sw.WriteLine(linea)
        Loop
        sw.Close()
        sr.Close()

        IO.File.Delete(filePathBak)


Attenzione agli Encoding.

Ciao.

.:. Marcello Rutter .:.
21 messaggi dal 30 maggio 2007
grazie per il suggerimento, nel mio caso il primo esempio è perfetto dato che ho file di dimensioni molto piccole..

lò adattato in c# come segue:

string filepath = @"C:\wmpub\WMRoot\testfileplay2.wsx" ;
List<string> names = new List<string>() ;
names.AddRange(File.ReadAllLines(filepath));
names.Insert(3, "<media src=\" C:\\wmpub\\WMRoot\\nada.jpg\" dur=\"1s\" />");
File.WriteAllLines(filepath, names.ToArray());

e funzia perfettamente, grazie!!
Modificato da dididj il 08 giugno 2007 14.57 -
Modificato da dididj il 08 giugno 2007 15.41 -

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.