2015-06-30 7 views
3

В VS я создал Azure Web Job. Я вижу способ котла пластины:Azure Web Job - обработка данных

static void Main() 
    { 
     var host = new JobHost(); 
     // The following code ensures that the WebJob will be running continuously 
     host.RunAndBlock(); 
    } 

Также метод функции:

// This function will get triggered/executed when a new message is written 
    // on an Azure Queue called queue. 
    public static void ProcessQueueMessage([QueueTrigger("queue")] string message, TextWriter log) 
    { 
     log.WriteLine(message); 
    } 

Прикольно ... Но я не хочу, чтобы использовать Azure Queue или хранения блога. Мне не нужно передавать какие-либо данные в качестве аргументов или запускать их.

Я просто хочу работу, которая будет работать каждый час и выполнять некоторую обработку данных. Специально поразил сторонний API и загрузил некоторые данные в мою Azure DB.

Что мне здесь не хватает?

EDIT

Должен ли я просто использовать консольного приложения ванильный в этой ситуации и опубликовать его в качестве «Azure Web Работа»?

ответ

3

Вы должны просто использовать консольное приложение для ванили и развернуть его в качестве Azure Web Job. См. Следующие шаги:

  1. Щелкните правой кнопкой мыши веб-проект в обозревателе решений и выберите команду Add> Существующий проект как Azure WebJob. Появится диалоговое окно Add Azure WebJob.
  2. В раскрывающемся списке «Имя проекта» выберите проект «Консольное приложение» для добавления в качестве веб-приложения.
  3. Заполните диалоговое окно «Добавить Azure WebJob» и нажмите «ОК».
  4. Появляется мастер публикации. Если вы не хотите публиковать немедленно, закройте мастер. Введенные вами настройки сохраняются, когда вы хотите развернуть проект.

Источник со скриншотами: https://azure.microsoft.com/nl-nl/documentation/articles/websites-dotnet-deploy-webjobs/#convert

Вы можете найти более подробную информацию об этом здесь: https://azure.microsoft.com/nl-nl/documentation/articles/websites-dotnet-deploy-webjobs/.

На этой странице вы также можете прочитать, что консольное приложение можно использовать в качестве Azure Web Job, добавив пакет Microsoft.Web.WebJobs.Publish NuGet и webjob-publish-settings.json.

Пример webjob опубликуйте-settings.json:

{ 
    "$schema": "http://schemastore.org/schemas/json/webjob-publish-settings.json", 
    "webJobName": "WebJob1", 
    "startTime": "2014-06-23T00:00:00-08:00", 
    "endTime": "2014-06-27T00:00:00-08:00", 
    "jobRecurrenceFrequency": "Minute", 
    "interval": 5, 
    "runMode": "Scheduled" 
} 

Если вы хотите добавить это Azure Web Работа в существующий проект Azure Web App (веб-сайт), вы можете связать webjob путем добавления webjobs- list.json к проекту веб-сайта.

Пример webjobs-list.json:

{ 
    "$schema": "http://schemastore.org/schemas/json/webjobs-list.json", 
    "WebJobs": [ 
    { 
     "filePath": "../ConsoleApplication1/ConsoleApplication1.csproj" 
    }, 
    { 
     "filePath": "../WebJob1/WebJob1.csproj" 
    } 
    ] 
} 
+0

Великий подправить спасибо! Можете ли вы объяснить, какая польза/точка заключается в связывании работы Azure Web Job с существующим Azure Web App? (webjobs-list) – aherrick

+0

Преимущество связывания веб-задания с Azure Web App заключается в развертывании веб-задания как части развертывания Azure Web App. Когда у вас эти 2 связаны, веб-задание будет автоматически развернуто с помощью Azure Web App. –

+0

Это имеет смысл ... круто! – aherrick

Смежные вопросы