Вы можете использовать несколько подходов.WCF REST, наверное, самый лучший.Вы можете найти хорошее введение в него в Руководстве MSDN по проектированию и созданию веб-сервисов RESTful с WCF 3.5 .Обратите внимание, что в версии 4.0 WCF (в настоящее время последней) есть некоторые улучшения.Для получения дополнительной информации ищите «Улучшенная поддержка REST» в этой статье MSDN .
. Здесь приведены ответы на ваши индивидуальные вопросы:
"Создать вебsite? Веб-страница? Веб-сервис? WCF? "Есть несколько подходов, которые вы можете использовать.Создание веб-сайта или страницы ASPX на существующем сайте ASP .Net или даже обработчик HTTP - все это допустимые параметры.Если вы собираетесь пойти по этому пути, вам придется самостоятельно выполнять большую часть внутренней работы сервиса.Например, вам придется самостоятельно обрабатывать сериализацию / десериализацию данных с помощью классов DataContractSerializer или XmlSerializer.
Однако, как уже упоминалось выше, WCF REST, вероятно, будет лучшим вариантом, поскольку он специально создан для ситуаций, подобных описанной вами.,
"Можете ли вы разместить его самостоятельно или он должен быть в IIS?"Для веб-сайтов ASP .Net или обработчиков HTTP вам потребуется IIS.Для WCF REST вы можете самостоятельно размещаться или развертываться в IIS.
"Как / где вы ловите почтовое событие?"Для страницы ASP .Net вы можете использовать событие Page_Load для обработки запроса.Вы должны получить доступ к элементу Request текущей страницы, чтобы проверить HTTP-метод запроса и все другие элементы, связанные с ним.Вы можете найти всех членов класса Request в MSDN здесь .Для WCF REST вам не нужно беспокоиться о реализации обработчика POST, поскольку он будет автоматически реализован для вас WCF.
В качестве заключительного замечания, не имеющего прямого отношения к вашему вопросу, если вы собираетесь разрабатывать какие-либо службы поверх HTTP, вы можете рассмотреть возможность использования Fiddler , который является незаменимым инструментом для такого рода услуг.
Обновление
Просто краткое примечание по архитектуре, касающееся выбора вашего подхода в зависимости от сложности вашего обслуживания.Как я подробно описал, отвечая на на этот вопрос, если у вас уже есть веб-сайт, к которому вы хотите добавить очень простую функциональность API (simple == всего несколько методов), вам, вероятно, следует сделать это с помощью ASP.Сетевые страницы или HTTP-обработчики.WCF намного мощнее и лучше подходит для более сложных сервисов, но может поначалу немного запугать, если у вас мало опыта с ним.