Dynamics 365 Commerce POS: アイテムをカートに追加する前に検証を追加する
1562 ワード
問題:
顧客は、アイテムが POS のカートに追加される前に検証を追加する必要があります.たとえば、アイテムが POS から購入される特定のリストに属している必要があります.または任意の基準.
発達:
アイテムがカートに追加されると、トリガーされるリクエストの 1 つが SaveCartVersionedDataRequest です.コマース ランタイム (CRT) 拡張機能として、この要求にプレトリガーを追加できます. IRequestTriggerAsync インターフェイスを実装し、必須メソッドを実装する必要があります.
展開:
CRT 拡張機能をビルドし、Retail サーバーの拡張機能フォルダーに配置します. 'RetailServer\WebRoot\bin\Ext' フォルダーに拡張機能 .dll をドロップし、構成ファイルの構成セクションに拡張アセンブリ参照を追加して、CommerceRuntime.Ext 構成ファイルを変更します.拡張機能を追加した後、Retail サーバーを再起動します.
ローカルでデバッグするには、この拡張機能 .dll を 'C:\Program Files (x86)\Microsoft Dynamics 365\70\Retail Modern POS\ClientBroker\ext' フォルダーに追加し、拡張機能アセンブリの参照を 'CommerceRuntime.MPOSOffline.ext' に追加することもできます. ' 構成ファイル.これを Retail Server の IIS プロセスに接続します.
Retail SDK ビルドの場合、この CRT 拡張機能を 'RetailSDK>Assets' の 'CommerceRuntime.ext' 構成と 'RetailSDK>BuildTools' の 'customization.settings' に追加する必要があります.
顧客は、アイテムが POS のカートに追加される前に検証を追加する必要があります.たとえば、アイテムが POS から購入される特定のリストに属している必要があります.または任意の基準.
発達:
アイテムがカートに追加されると、トリガーされるリクエストの 1 つが SaveCartVersionedDataRequest です.コマース ランタイム (CRT) 拡張機能として、この要求にプレトリガーを追加できます. IRequestTriggerAsync インターフェイスを実装し、必須メソッドを実装する必要があります.
public class AddItemToCartValidationTrigger : IRequestTriggerAsync
{
public IEnumerable SupportedRequestTypes => new[]
{
typeof(SaveCartVersionedDataRequest)
};
public async Task OnExecuted(Request request, Response response)
{
await Task.CompletedTask;
}
public async Task OnExecuting(Request request)
{
boolean criteria = true;
if (criteria) // if some criteria is met, add an item to the cart
{
// do something
}
else // reject item to be added to cart
{
// throw commerce exception
}
}
}
展開:
CRT 拡張機能をビルドし、Retail サーバーの拡張機能フォルダーに配置します. 'RetailServer\WebRoot\bin\Ext' フォルダーに拡張機能 .dll をドロップし、構成ファイルの構成セクションに拡張アセンブリ参照を追加して、CommerceRuntime.Ext 構成ファイルを変更します.拡張機能を追加した後、Retail サーバーを再起動します.
ローカルでデバッグするには、この拡張機能 .dll を 'C:\Program Files (x86)\Microsoft Dynamics 365\70\Retail Modern POS\ClientBroker\ext' フォルダーに追加し、拡張機能アセンブリの参照を 'CommerceRuntime.MPOSOffline.ext' に追加することもできます. ' 構成ファイル.これを Retail Server の IIS プロセスに接続します.
Retail SDK ビルドの場合、この CRT 拡張機能を 'RetailSDK>Assets' の 'CommerceRuntime.ext' 構成と 'RetailSDK>BuildTools' の 'customization.settings' に追加する必要があります.
Reference
この問題について(Dynamics 365 Commerce POS: アイテムをカートに追加する前に検証を追加する), 我々は、より多くの情報をここで見つけました https://dev.to/siddiquimarij/dynamics-365-commerce-pos-add-validation-before-adding-an-item-to-cart-3588テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol