У меня есть веб-служба ASMX, код которой полностью находится в файле с выделенным кодом, поэтому все содержимое файла .asmx
:
<%@ WebService Language="C#" CodeBehind="~/App_Code/AddressValidation.cs" Class="AddressValidation" %>
На моей тестовой машине (Windows XP с IIS 5) я настроил виртуальный каталог только для этого решения ASP.NET 2.0, и все отлично работает. Весь мой код хорошо отделен, и он просто работает.
Однако, когда мы развернули это решение в нашей среде разработки Windows Server 2003, мы заметили, что код компилируется только тогда, когда весь код был добавлен непосредственно в файл .asmx
, что означает, что решение не работает с кодом -позади. Мы не можем понять, почему это происходит.
Одна вещь, которая отличается от нашей установки в нашей среде разработки, состоит в том, что вместо создания отдельного виртуального каталога только для этого решения, мы поместили его в существующий каталог, в котором работает классическое приложение ASP. Итак, здесь у нас есть папка с приложением ASP.NET 2.0 в каталоге, который содержит классическое приложение ASP. Конечно, все в приложении ASP.NET 2.0 работает, если весь код находится в файле .asmx
, а не в коде позади, но нам бы очень хотелось узнать, почему он не распознает файлы кода и компилирует его правильно.