Поделиться через


Замечания по программированию

В этом разделе описываются требования к программированию StreamInsight.

Версии платформы .NET Framework

При разработке приложений StreamInsight поддерживает платформы .NET Framework 3.5 с пакетом обновления 1 (SP1) и .NET Framework 4.

Если приложение использует источники и приемники событий, реализующие интерфейсы IObservable и IObserver, оно должно использовать платформу .NET Framework 4 (но не клиентский профиль .NET Framework 4). Дополнительные сведения см. в разделе Использование наблюдаемых и перечисляемых источников и приемников событий (StreamInsight).

Версии StreamInsight

При установке новой версии StreamInsight она устанавливается параллельно с версиями, установленными ранее. Приложения и библиотеки, скомпилированные с использованием предыдущих версий, будут продолжать работать без необходимости внесения изменений. При установке новой версии StreamInsight на компьютере будут внесены следующее изменения.

  • Новые сборки будут установлены в новую папку в файловой системе. Например, C:\Program Files\Microsoft StreamInsight 1.1.

  • Новые сборки устанавливаются параллельно с ранее установленными версиями в глобальном кэше сборок.

  • В среде Microsoft Visual Studio поддерживается разработка с использованием всех ранее установленных версий StreamInsight. Сборки для всех установленных версий отображаются в диалоговом окне Добавить ссылку.

  • Если приложение было скомпилировано с использованием новой версии StreamInsight, то при запуске приложения с использованием предыдущей версии StreamInsight будет вызвано исключение.

  • Ссылки на сборки, скомпилированные с использованием предыдущей версии, во время выполнения заменяются ссылками на новые версии сборок. Чтобы обойти это перенаправление, в файл конфигурации приложения можно добавить необходимые сведения, которые позволят переопределить политику установленного издателя. В файле app.config для своего приложения StreamInsight укажите значение <publisherPolicy apply="no" /> под тегом <configuration><runtime><assemblyBinding>. Если эти теги не присутствуют, создайте их, как показано в следующем примере:

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

    Дополнительные сведения см. в подразделе «Переопределение политики издателя» раздела Перенаправление версий сборок. При обходе перенаправления сборок необходимо проследить за тем, чтобы обход перенаправления был задан для всех сборок StreamInsight.

Дополнительные сведения см. в подразделе «Установка новой версии StreamInsight» раздела Установка (StreamInsight).

Сравнение строк в метаданных StreamInsight

Если имя объекта StreamInsight передается в вызове метода, то при сравнении строк учитываются только порядковые номера, а культура не учитывается. В результате для некоторых строк может обнаруживаться различие в порядковых номерах, хотя на самом деле строки неразличимы в целевой культуре. Эта проблема может возникать при создании нового объекта и извлечении существующего объекта с использованием одного из следующих методов и свойств.