Какво е ASMX файл?
Файл с разширения .asmx е файл на уеб услуга на ASP.NET, който осигурява комуникация между два обекта през интернет, използвайки Simple Object Access Protocol (SOAP). Той се внедрява като услуга на базирания на Windows уеб сървър за обработка на входяща заявка и връщане на отговора. За разлика от ASPX файловете, които съдържат кода за визуално показване на ASP.NET уеб страници, ASMX файловете се изпълняват на сървъра във фонов режим и изпълняват различни задачи като свързване с база данни, извличане на данни и връщането им в формат, в който е направена заявката. Те се използват специално за XML уеб услуги.
ASMX файлов формат
ASMX файловете са в обикновен текстов формат и могат да се отварят или редактират в приложения като Microsoft Visual Studio или текстови редактори. Това е собствен файлов формат на Microsoft и има добре дефиниран синтаксис за създаване на уеб услуги. Отговор от ASMX файл под формата на SOAP XML има следните елементи.
Envelop
- Основен елемент, който идентифицира XML документа като SOAP съобщение.Header
- незадължителен елемент, който съдържа специфична за приложението информация, като например данни за удостоверяване. Ако елементът Header присъства, той трябва да е първият дъщерен елемент на елемента Envelope.Body
- Съдържа SOAP съобщението, предназначено за получателя.Fault
- незадължителен елемент, който се използва за указване на съобщения за грешка. Ако елементът Fault присъства, той трябва да е дъщерен елемент на елемента Body.
ASMX файловете могат да бъдат написани на .NET езици като C#, Visual Basic или JScript.
Как ASMX е различен от ASPX и ASCX?
ASMX файловете са различни от ASPX и ASCX файловете.
- ASPX, Active Server Pages, файловете са програмни файлове, които се генерират с помощта на рамката на Microsoft ASP.NET, работеща на уеб сървъри. Те се изобразяват в уеб браузъра на клиента, когато потребител поиска достъп до такава страница.
- ASCX, Active Server User Control, дефинира потребителски контроли, които се използват за дефиниране на многократно използвани контроли в ASP.NET уеб страници или в целия уебсайт.