Сегодня нет SQL-агента для SQL Azure. Вам нужно будет вызывать однострочный оператор из фоновой задачи. Однако, если у вас уже есть веб-роль, вы можете легко создать поток для обработки этого в своей веб-роли без необходимости создания роли рабочего. Я писал о концепции here. Чтобы создать поток, вы можете либо сделать это в обработчике событий OnStart() (где экземпляр Role еще не добавлен в балансировщик нагрузки), либо в методе Run() (где экземпляр Role был добавлен к загрузке балансир). Обычно это хорошая идея для настройки в OnStart().
Одно предупреждение, которое может быть неочевидным, выполняете ли вы этот вызов в своей рабочей роли или в фоновом потоке существующей роли в Интернете. Если вы масштабируете свою роль, скажем, двумя экземплярами, вам необходимо убедиться, что ежедневный вызов происходит только из одного из экземпляров (иначе вы могли бы получить либо дубликаты, либо, возможно, дорогостоящую операцию, выполняемую несколько раз). Есть несколько методов, которые вы можете использовать, чтобы избежать этого, например, для блокировки строки таблицы или для аренды Azure Storage. С первым вы можете использовать эту строку для хранения метки времени в последний раз, когда была выполнена операция. Если вы приобрели блокировку, вы можете проверить, произошла ли операция в течение установленного временного окна (может быть, час?), Чтобы решить, был ли один из других экземпляров уже выполненным. Если вам не удалось получить блокировку, вы можете предположить, что другой экземпляр имеет блокировку и выполняет команду. Существуют и другие методы - это всего лишь одна идея.
Я бы зашел на сайт http://www.mygreatwindowsazureidea.com/ и проголосовал за эту функцию! – ryancrawcour