Press "Enter" to skip to content

A DotNetWorker Site - .Net and surroundings Posts

Attivare il Lock automatico dei file sul Checkout (automatico dell’editor di Visual Studio) in TFS 2013

Passando da Team Foundation Server 2010 a Team Foundation Server 2013 ci sono alcune cose che vengono automaticamente configurate per default sulla gestione del Source control e sono le seguenti:

  • Il workspace creato dal programmatore sulla sua macchina è per default Private e sempre per default Local
    • Private = nessun’altro sulla stessa macchina può usare lo stesso workspace per lavorare.
    • Local = l’utente lavora sempre disconnesso dal server, quindi il checkout e checkin non sono mai lockati sul server pertanto è possibile editare lo stesso file in 15 persone contemporaneamente.
  • I progetti TFS, per default hanno il checkout multiplo abilitato
    • Disabilitando il checkout multiplo, a causa delle opzioni precedenti comunque non cambia nulla, perché il server annota il checkout ma non blocca nulla.
Comments closed

Installare il .Net framework 3.5 (e di conseguenza il 2.0) su Windows 8.1

In questi giorni, abbiamo installato una macchina di test con Windows 8.1 e il Visual Studio 2013 per poter testare le nostre applicazioni anche sul nuovo sistema operativo Microsoft. In alcuni progetti, utilizziamo le Interop di office ed alcuni componenti di terze parti che richiedono il framework 2.0 o il…

Comments closed

Implementare un Data Provider SQL Server usando ADO.Net

Nei post di quest’anno, iniziando ad aprile, ho creato un piccolo database SQL Server per dimostrare come utilizzare gli script T-SQL per generare gli oggetti dentro a SQL Server, poi ho proseguito, creando un sistema composto da un Servizio Windows e da una Console WPF che permettono di simulare una versione minimale dell’Agent di SQL Server per eseguire operazioni schedulate su SQL Server ed ho usato lo sviluppo di queste due applicazioni per spiegare una serie di concetti, spero utili, costruendo mattone per mattone l’applicazione WPF ed il Servizio Windows funzionanti ed installabili su qualsiasi PC o Server. Adesso è venuto il momento di riprendere in mano il Database definito nella serie iniziale di Post di quest’anno, e implementare per prima cosa una interfaccia WPF che ci permetta di inserire e modificare il suo contenuto.

Comments closed

ListBox, WPF, GetHashCode e Strani comportamenti

La scorsa settimana, ero in ferie quindi mi sono dedicata a produrre qualcosa di nuovo per Dotnetwork, proseguendo con i tutorial dedicati a classi, librerie, applicazioni, servizi e database, visto che era arrivato il momento di iniziare a lavorare con i Dati, dopo aver costruito il necessario a manipolare e gestire un database, ho iniziato a studiare il metodo più semplice per costruire una classe Data Provider in grado di fornire le operazioni base di CRUD (CReate, UpDate, Delete) su una tabella database SQL Server evitando di dover chiamare in causa immediatamente Entity Framework, ma utilizzando POCO (Plain Old COde) e soprattutto poco codice davvero.

Ultimata la classe Data Provider e quanto necessario al suo utilizzo, ho iniziato a creare una User Interface per il nostro database Recipes, che abbiamo iniziato a vedere una cinquantina di post or sono, come esempio per la creazione di un database funzionante utilizzando solo T-SQL. Ho utilizzato quanto sviluppato fino ad ora nelle librerie base Dotnetwork ed ho creato un’ interfaccia di base, e il primo User Control per una tabella Sql Server.

Comments closed

Come installare SQL Server 2012

Un webcast per spiegare quali sono i passaggi e le cose da sapere quando si installa SQL Server 2012 in qualsiasi edizione.

In questo caso installiamo una Developer Edition, che equivale ad una Enterprise ma può essere installata su una macchina Windows 7, le operazioni per installare sql server su una macchina server nella versione standard o enterprise sono quindi le stesse.

Importanti i tips da amministratore:

  • Configurare gli utenti di servizio
  • Scegliere le collation
  • Configurare le cartelle per i dati
  • Configurare gli utenti amministratori ed attivare il Mixed Mode per l’autenticazione
Comments closed

Utility e User Experience in WPF

In questo progetto implementeremo una semplice utility per verificare la target platform delle Dll e degli Exe memorizzati su una cartella e ne approfitteremo per mostrare come utilizzare la classe AutoSettingsManager già  implementata nella console del MiniSqlAgent, per migliorare la User Experience. Inoltre, visto che è un utility che possiamo “utilizzare” creiamo anche il setup della stessa utilizzando InnoSetup e mostriamo come utilizzare Visual Studio per effettuare la build del setup grazie ai Post Build Events.

Comments closed

16 – MIniSqlAgent – Modificare i Job per poter gestire il Timeout

In quanto sviluppato fino ad ora per creare un servizio in grado di eseguire script SQL su un Sql Server in modo schedulato, abbiamo predisposto tutto quanto per una esecuzione molto semplice, lasciando al client ADO e alla configurazione del Server SQL il compito di decidere come eseguire gli script. In questo post, aggiungeremo un parametro di controllo fondamentale per i Jobs, ovvero la possibilità di decidere dopo quanto tempo la connessione andrà in timeout se non riuscirà a completare un Job.

Comments closed

15 – MiniSqlAgent – Implementare il servizio per eseguire Job Schedulati su SQLServer

Alla distanza di 42 post dall’inizio della serie di quest’anno, arriviamo finalmente al post più importante per concludere lo sviluppo della versione 1.0 di MiniSqlAgent, un Servizio Windows in grado di eseguire in modo schedulato degli script SQL su qualsiasi SqlServer simulando in versione minimalista il Sql Server Agent. In questo post implementeremo quanto necessario ad effettuare le seguenti operazioni:

  • Allo startup del servizio leggere tutti i Job memorizzati sulla cartella dati del servizio ed inserirli in una collection.
  • Impostare un file system watcher che controlli se vengono aggiunti, cancellati, modificati dei Job sulla cartella dati riportando gli aggiornamenti sulla collection.
  • Impostare il Loop di servizio in modo tale che controlli se vi sono Job da eseguire e li esegua.
Comments closed

14 – MiniSqlAgent – User interface Tuning – Fare aprire una sola volta il Jobs Manager

In questo post andremo ad implementare il necessario a fare in modo che la finestra di base della MiniSqlAgentConsole non apra più di una volta l’interfaccia per la gestione dei Jobs. Per fare questo andremo ad implementare una classe entity Generic, una collection Generic, ed un metodo anonimo.

Comments closed

Common Libraries – Implementare una Window WPF con funzionalità estese

In questo post, vedremo come WPF ci permetta di derivare le proprie classi per permetterci di aggiungere funzionalità anche quando non vogliamo modificare l’aspetto visuale della classe WPF. In questo caso, avendo introdotto nel post precedente un sistema di memorizzazione di parametri di stato per la User Interface delle nostre applicazioni, vogliamo estendere la Window WPF e creare una nuova Window che sappia automaticamente come salvare la propria dimensione. Fatto questo, useremo questa nuova window come classe base per la MainWindow di MiniSqlAgentConsole.

Comments closed