...puoi ovviare facendo girare il programma su un computer di tua proprietà, magari il server aziendale. Non è necessario che si trovi nel server di asp.net in fondo è "solo" un applicazione che interroga un db e manda delle email.

Qui si pone un altro problema però: molto spesso i servizi di hosting che ti danno anche il database non permettono di raggiungere il loro db da un ip che non sia quello delle loro server farm. Per capirci se sull'hosting xyz la tua app asp.net gira sulla macchina ip1 e il db sulla ip2 i sistemisti fanno in modo che ip2 sia raggiungibile solo da ip1. E' facile testare questo, prova a debuggare in locale la tua applicazione utilizzando la stringa di connessione remota (a patto che il b li sopra gia ci sia) se funziona allora il problema non si pone altrimenti il tentativo di connessione al db sollevera un eccezione.

Ecco, questi sono gli scenari in cui la piattaforma Azure risolve tutti i problemi, purtroppo i costi non sono 20 euro all'anno (ma nemmeno quelli di un server dedicato).