Я написал программу на C # с использованием Visual Studio 2010. В настоящее время это консольное приложение, и в идеале я хочу, чтобы эта программа работала на сервере. Он регистрирует сообщения в базе данных SQL, которые я могу просматривать через веб-сайт без проблем, но я хочу иметь возможность управлять программой на C # и вызывать методы удаленно через веб-сайт в браузере. Я определил эти методы, которые содержат вызовы других методов в программе, таких как ArticleOrganizer.reprocessArticle (a, 0):
[ServiceContract]
public interface IRemotePrimeService
{
[OperationContract]
void ProgramRestart();
[OperationContract]
void ProcessArticleAgain(Article a);
}
public class RemotePrimeService : IRemotePrimeService {
public void ProgramRestart() {
Console.WriteLine("Restart requested remotely. Program restarting.");
Application.Restart();
}
public void ProcessArticleAgain(Article a) {
// Log the activity
a.MessageLog = "Reprocessing requested remotely. Article sent to Stage 0 of pipeline.";
// start the article through the processing again
ArticleOrganizer.reprocessArticle(a, 0);
}
}
Это то, что я хочу иметь возможность вызывать удаленно. Кажется, что службы в WCF - это то, как можно это сделать, но можно ли разместить это консольное приложение C # на сервере, как оно есть, без необходимости переписывать его как веб-приложение? Я прочитал много документации, особенно на MSDN, но был бы признателен за простой шаг за шагом из моих лучших действий. Я установил и настроил IIS на своем компьютере для проверки в качестве локального хоста.
Заранее большое спасибо за совет