注
コミュニティの関心グループが Yammer から Microsoft Viva Engage に移行されました。 Viva Engage コミュニティに参加し、最新のディスカッションに参加するには、「 Finance and Operations Viva Engage Community へのアクセスを要求する 」フォームに入力し、参加するコミュニティを選択します。
新しいクラス ライブラリを追加して Web サービスを使用します。 Microsoft Dynamics AX 2012 では、Microsoft Visual Studio プロジェクトを参照として追加し、Aif::CreateServiceClient を使用することで、X++ コードから Web サービスを使用できました。 このシナリオはサポートされていますが、手順は変更されました。 アプリケーション統合フレームワーク (AIF) は現在サポートされていません。
次の手順は、X++ から外部 StockQuote サービスを使用する方法を示しています。
このサンプルの Web サービス URL は架空のものです。
http://www.contoso.net/stockquote.asmxに既知の Web サービスが存在しません。 このコードを機能させるには、それを特定の Web サービスに適応させる必要があります。
Visual Studio で新しいクラス ライブラリ プロジェクトを作成し、ExternalServiceLibrary.csproj という名前を付けます。
Visual Studio プロジェクトで、外部 Web サービス
http://www.contoso.net/stockquote.asmxへのサービス参照を追加します。新しい静的クラスを作成し、次の例に示すように StockQuote サービス操作をラップします。
public static string GetQuote(string s) { var binding = new System.ServiceModel.BasicHttpBinding(); var endpointAddress = new EndpointAddress("http://www.contoso.net/stockquote.asmx"); ServiceLibrary.QuoteReference.StockQuoteSoapClient client = new ServiceLibrary.QuoteReference.StockQuoteSoapClient(binding, endpointAddress); //GetQuote is the operation on the StockQuote service return client.GetQuote("MSFT"); }プロジェクトを構築します。 バイナリ ExternalServiceLibrary.dll が作成されます。
Visual Studio で、新しい Dynamics プロジェクトを作成します。
参照として ExternalServiceLibrary.dll を追加します。
X++ クラスでは、ExternalServiceLibrary.dllで参照される外部 Web サービスを使用します。
public static void main(Args _args) { info(ServiceLibrary.StockQuoteClass::GetQuote("MSFT")); }