Generar el proxy de TypeScript para Store Commerce

Completado

El proxy de Commerce permite hacer abstracción de la interfaz entre Retail Server y Commerce Runtime (CRT).

Por ejemplo, puede crear una nueva entidad y alguna lógica empresarial como operaciones de solicitud/respuesta en CRT y puede agregar una nueva API de Retail Server para exponer esa entidad y esas operaciones de solicitud/respuesta. Ahora, supongamos que desea obtener acceso a la entidad y a las operaciones de solicitud o respuesta en Store Commerce para crear la lógica del cliente.

Puede crear manualmente todas las entidades y los metadatos de solicitud y respuesta en Store Commerce y obtener acceso a Retail Server mediante los parámetros correctos. El proxy de Commerce reduce este esfuerzo al generar automáticamente el proxy para todas las entidades personalizadas y las operaciones de solicitud/respuesta que se agregan a la API de Retail Server.

La herramienta de proxy genera la interfaz y todos los metadatos necesarios, y luego resume la implementación real. De esa manera, puede incluir los archivos en los proyectos de extensión y obtener acceso a las API y las entidades de Retail Server mediante el uso de los metadatos y la interfaz que se generen.

Para generar el proxy de TypeScript para Store Commerce, siga estos pasos:

  1. Abra el proyecto de plantilla de proxy de muestra de \RetailSDK\Code\SampleExtensions\TypeScriptProxy\TypeScriptProxy.Extensions.StoreHoursSample\Proxies.TypeScriptProxy.Extensions.StoreHoursSample.csproj en Visual Studio. Cámbiele el nombre si es necesario.

  2. Agregue el proyecto de extensión de Retail Server como proyecto de referencia de proyecto a este proyecto de plantilla de proxy. Elimine la referencia de proyecto StoreHoursSample existente.

  3. Haga clic con el botón derecho en Proxies.TypeScriptProxy.Extensions.StoreHoursSample.csproj y luego seleccione Editar Proxies.TypeScriptProxy.Extensions.StoreHoursSample.csproj.

  4. En el nodo RetailServerExtensionAssemblies, especifique el nombre de ensamblado de su extensión de Retail Server. En el siguiente ejemplo se muestra cómo agregar el nombre de ensamblado.

    <ItemGroup>
        <RetailServerExtensionAssemblies Include="..\..\RetailServer\Extensions.Sample\bin\$(Configuration)\net461\$(AssemblyNamePrefix).RetailServer.Extension.Sample.dll" />
    </ItemGroup>
    
  5. En el nodo Copy, actualice la ruta DestinationFolder hacia la carpeta de extensión de Store Commerce, de modo que los archivos proxy generados se copien automáticamente en la carpeta POS Extension. Los archivos proxy generados también se copiarán a \RetailSDK\Code\SampleExtensions\TypeScriptProxy\TypeScriptProxy.Extensions.StoreHoursSample\DataService. En el siguiente ejemplo se muestra cómo actualizar la ruta.

    <Copy SourceFiles="@(GeneratedDataServiceContracts)" DestinationFolder="$(SdkRootPath)\POS\Extensions\Sample\DataService" SkipUnchangedFiles="true" />
    
  6. Una vez que haya introducido los cambios, cree el proyecto de proxy para generar archivos de proxy de TypeScript. Cuando se complete la compilación, los archivos proxy estarán disponibles en la carpeta \RetailSDK\Code\SampleExtensions\TypeScriptProxy\TypeScriptProxy.Extensions.StoreHoursSample\DataService y la carpeta especificada en el comando Copiar. La ruta y la ruta de acceso de la carpeta pueden variar según la estructura de la carpeta.

Para obtener más información, consulte Crear una nueva API de extensión de Retail Server.