Consideraciones de programación

En este tema se describen algunos requisitos para la programación con StreamInsight.

Versiones de .NET Framework

StreamInsight admite .NET Framework 3.5 con Service Pack 1 y .NET Framework 4.0 para el desarrollo de aplicaciones.

Si la aplicación usa orígenes o receptores de eventos que implementan las interfaces IObservable o IObserver, la aplicación debe tener como destino .NET Framework 4.0 (no .NET Framework 4 Client Profile). Para obtener más información, vea Usar orígenes y receptores de eventos observables y enumerables (StreamInsight).

Versiones de StreamInsight

Cuando se instala una nueva versión de StreamInsight, se instala en paralelo con las versiones instaladas anteriormente. Las aplicaciones y bibliotecas compiladas con las versiones anteriores continuarán ejecutándose sin ninguna modificación. Después de instalar una nueva versión de StreamInsight, se observarán los cambios siguientes en el equipo:

  • Los nuevos ensamblados se instalan en una nueva carpeta en el sistema de archivos. Por ejemplo, C:\Program Files\Microsoft StreamInsight 1.1.

  • Los nuevos ensamblados se instalan en paralelo con las versiones instaladas anteriormente en la memoria caché de ensamblados global (GAC).

  • En Microsoft Visual Studio, se pueden realizar desarrollos con cualquiera de las versiones instaladas de StreamInsight. Los ensamblados para cada versión instalada aparecen en el cuadro de diálogo Agregar referencia.

  • Si compila una aplicación con una versión más reciente de StreamInsight, la aplicación sufrirá un error acompañado de una excepción si la ejecuta con una versión más antigua de StreamInsight.

  • En tiempo de ejecución, las referencias de ensamblado en aplicaciones o bibliotecas compiladas con una versión anterior se redirigen a la versión más reciente de los ensamblados. Para omitir esta redirección, puede agregar información al archivo de configuración de la aplicación para invalidar la directiva de publicador instalada. En el archivo app.config de la aplicación StreamInsight, especifique <publisherPolicy apply="no" /> en la etiqueta <configuration><runtime><assemblyBinding>. Si no están estas etiquetas, créelas, tal como se muestra en el siguiente ejemplo:

    …
        <configuration>
            <runtime>
                <assemblyBinding>
                     <publisherPolicy apply="no" />
                </assemblyBinding>
            </runtime>
        </configuration>
    …
    

    Para obtener más información, vea la sección "Omitir la directiva de publicador" en el tema Redirigir versiones de ensamblado. Si elige omitir la redirección de ensamblados, asegúrese de omitir la redirección para todos los ensamblados de StreamInsight.

Para obtener información adicional, vea "Instalar una nueva versión de StreamInsight" en Instalación (StreamInsight).

Comparación de cadenas en metadatos de StreamInsight

Cuando se pasa el nombre de un objeto de StreamInsight en la llamada a un método, las cadenas se comparan solo por ordinal, sin tener en cuenta la referencia cultural. Como consecuencia, algunas cadenas pueden identificarse como cadenas diferentes por ordinal cuando en realidad son idénticas en la referencia cultural prevista. Este problema puede producirse cuando se crea un nuevo objeto o se recupera un objeto existente mediante uno de los métodos y propiedades siguientes: