サイトを SP2007 から SP2010 に移行中です。このソリューションには、.ASMX ファイルに含まれる Web サービスが含まれています。WCF を使用する必要があることは理解していますが、この Web サービスを WCF を使用するように変換する時間がなく、このプロジェクトは会社の元開発者から継承されたため、このコードのアーキテクチャを理解しようとしています。
私たちが遭遇した問題は、サービスを呼び出すと、「この Web サービスはhttp://tempuri.org/をデフォルトの名前空間として使用しています」という警告が表示されることです。
以下に示すように、Web サービスの定義で名前空間プロパティを既に変更しています。
[WebService(Namespace = "http://localhost")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[ScriptService]
public class searchService : WebService
{
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public resultWrapper search(string query)
{
....
}
}
ただし、Web サービスの WSDL を表示すると、次のようになります。
<wsdl:definitions targetNamespace="http://tempuri.org"><wsdl:types/><wsdl:service
name="search"/></wsdl:definitions>
既に元のソリューションを撤回し、「クリーン ソリューション」操作を実行してソリューションを再デプロイしましたが、これまでのところ何も機能していません。Web サービス定義で指定した名前空間に基づいて WSDL を強制的に更新するために何をする必要があるか、または更新するために WSDL 情報の設定を変更する必要がある別の場所があるかどうかはわかりません。