سؤال

أحاول تنفيذ خدمة ويب HTML Parsing كما هو موضح في الفصل 23 من إطلاق العنان لـ ASP.NET (الطبعة الأولى) و مقالة MSDN هذه.حتى الان جيدة جدا!ومع ذلك، أتلقى تحذيرًا مزعجًا عند استخدام wsdl.exe لإنشاء الفصل:

Microsoft (R) Web Services Description Language Utility
[Microsoft (R) .NET Framework, Version 2.0.50727.3038]
Copyright (C) Microsoft Corporation. All rights reserved.

Warning: This web reference does not conform to WS-I Basic Profile v1.1.
SOAP 1.1 binding was not found: WS-I's Basic Profile 1.1 consists of 
implementation guidelines that recommend how a set of core Web services
specifications should be used together to develop interoperable Web 
services. For the 1.1 Profile, those specifications are SOAP 1.1, 
WSDL 1.1, UDDI 2.0, XML 1.0 and XML Schema.

For more details on the WS-I Basic Profile v1.1, see the specification
at http://www.ws-i.org/Profiles/BasicProfile-1.1.html.

أرغب في الالتزام بالمواصفات إن أمكن.نظرت إلى الصفحة الموصى بها ووجدت صفحتين على w3.org، لكن لم أجد مثالًا ملموسًا لعناصر XML التي أحتاج إلى تضمينها من أجل التوافق.

بدلاً من نشر ملف xml الخاص بي، سأقول فقط أن wsdl يتوافق تقريبًا مع ما هو مستخدم في مقالة MSDN (باستثناء أنني قمت بإصلاح عنوان URL غير الصالح لـ XMLSchema على w3.org عن طريق إضافة ".dtd").

شكرًا!

هل كانت مفيدة؟

المحلول

Wsdl.exe استخدامه بشكل افتراضي صابون كبروتوكول يتم تنفيذه وبالتالي يحاول التحقق من التوافق مع ملف التعريف الأساسي.على أي حال، wsdl.exe يتعامل مع هذا ويستمر مع تحذير فقط.إذا قمت بالتحقق من ملف مقالة MSDN, ، ستلاحظ أن الرابط تم تكوينه للاستخدام httpGet بروتوكول.لذا، إذا كنت تريد منع التحذير، قم بتشغيل

wsdl.exe /protocol:HttpGet <url or path> 

ومع ذلك، فإن فئة الوكيل الناتجة هي نفسها مع الفئة السابقة.

ملاحظة جانبية:لا يتعين عليك إصلاح أي عنوان URL يحدد مساحة الاسم، نظرًا لأنه لا يتم استخدامه كعنوان URL ولكن كمعرف.على الرغم من أن العديد من مساحات الأسماء تبدو وكأنها عناوين URL، إلا أنها لا تحتاج إلى الإشارة إلى الموارد الفعلية على الويب.مساحة الاسم http://www.w3.org/2001/XMLSchema تم تعريفه بواسطة W3C في توصية مخطط XML.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top