C#

www.altova.com Imprimir este apartado Página anterior Subir un nivel Página siguiente

Inicio >  API de MapForce Server > Ejemplos de código >

C#

Este ejemplo muestra cómo ejecutar un archivo de ejecución de MapForce (.mfx) desde código C#. En Windows, los archivos de ejemplo están en: C:\Program Files\Altova\MapForceServer2019\etc\Examples.

 

La solución de ejemplo está en el directorio "Archivos de programa", que necesita derechos de administrador. Puede ejecutar Visual Studio como administrador o copiar la solución en una carpeta distinta que no necesite derechos de administrador.

 

Requisitos

MapForce Server está instalado y tiene asignada una licencia válida.
Si crea un proyecto de Visual Studio nuevo, añada una referencia al ensamblado de MapForce Server (véase Información sobre la interfaz .NET). Puede saltarse este paso si está ejecutando el ejemplo existente de la API de MapForce, ya que el ejemplo ya contiene esa referencia.
En el menú Compilar de Visual Studio, haga clic en Administrador de configuración y escoja la plataforma correcta, por ejemplo Debug | x86  (o Debug | x64, en su caso). No use Any CPU como plataforma.
Si tiene instalada la versión de 64 bits de MapForce Server, la aplicación que llama a la API (como la del ejemplo que aparece más abajo) deberá estar diseñada para la plataforma de 64 bits en Visual Studio. Además, la ruta de acceso del ejecutable de MapForce Server también debe adaptarse según corresponda en el código.

 

Ejecutar el archivo .mfx

El siguiente código hace lo siguiente:

 

Crear una nueva instancia de Altova.MapForceServer.Server. Este es el objeto con el que trabajará en adelante.
Indicar el directorio de trabajo en el que se lleva a cabo la ejecución. Se espera que los archivos de entrada estén en este directorio si hizo referencia a ellos con una ruta relativa. Los archivos de salida también se crearán en este directorio. Más concretamente, el archivo de ejecución del servidor que se ejecuta en este ejemplo (TokenizeString.mfx) lee datos de un archivo llamado AltovaTools.xml, al que acompaña el esquema AltovaTools.xsd. Estos archivos deben existir en el directorio de trabajo para que el archivo .mfx se pueda ejecutar correctamente.
Ejecutar el archivo TokenizeString.mfx. La ruta de acceso a este archivo se da como argumento al método Run. Si la ejecución funciona correctamente se crea en el directorio de trabajo un archivo .csv que representa el resultado de la asignación.

 

namespace MapForceServerAPI_sample
{
  class Program
  {
      static void Main(string[] args)
      {
          //Crear un objeto MapForce Server
          Altova.MapForceServer.Server objMFS = new Altova.MapForceServer.Server();
 
          //Establecer un directorio de trabajo, que sirve de base para rutas de acceso relativas (puede que tenga que adaptar la ruta de acceso a la carpeta de instalación)
          objMFS.WorkingDirectory = "C:\\Program Files\\Altova\\MapForceServer2019\\etc\\Examples";
 
          //La ruta de acceso predeterminada para el ejecutable de MapForce Server es la ruta de instalación (el directorio donde está MapForceServer.dll)
          //Si movió los binarios a otra ubicación del disco, deberá establecer la ruta de acceso del archivo .exe de forma explícita
          //objMFS.ServerPath = "C:\\Archivos de programa (x86)\\Altova\\MapForceServer2019\\bin\\MapForceServer.exe";
 
          //Establecer archivo y configuración de recursos globales si la asignación usa recursos globales
          //objMFS.SetOption( "globalresourcefile", "GlobalResource.xml" ); // "gr" puede usarse como abreviatura de "globalresourcefile"
          //objMFS.SetOption( "globalresourceconfig", "Default" ); // "gc" puede usarse como abreviatura de "globalresourceconfig"
 
          //Preparar los parámetros si la asignación los usa
          //objMFS.AddParameter( "paramprueba1", "valor 1" );
 
          //Ejecutar la asignación. Las rutas de acceso de entrada y salida se almacenan en el archivo MFX
          // NOTA: para poder ejecutar este ejemplo deberá adaptar la ruta de acceso del archivo de entrada
          if (objMFS.Run("C:\\Program Files\\Altova\\MapForceServer2019\\etc\\Examples\\TokenizeString.mfx"))
              System.Console.WriteLine("La ejecución terminó correctamente.");
          else
              System.Console.WriteLine(objMFS.LastExecutionMessage);
      }
  }
}

 

 


© 2019 Altova GmbH