Share via


프로그래밍 고려 사항

이 항목에서는 StreamInsight 프로그래밍에 대한 일부 요구 사항에 대해 설명합니다.

.NET Framework 버전

StreamInsight는 응용 프로그램 개발을 위한 .NET Framework 3.5 서비스 팩 1 및 .NET Framework 4를 지원합니다.

응용 프로그램에서 IObservable 또는 IObserver 인터페이스를 구현하는 이벤트 원본이나 싱크를 사용할 경우 응용 프로그램은 .NET Framework 4(.NET Framework 4 클라이언트 프로필 아님)를 대상으로 해야 합니다. 자세한 내용은 Observable 및 열거 가능 이벤트 원본 및 이벤트 싱크 사용(StreamInsight)을 참조하십시오.

StreamInsight 버전

새 버전의 StreamInsight를 설치할 경우 새 버전은 이전에 설치된 버전과 함께 설치됩니다. 이전 버전에 대해 컴파일된 응용 프로그램과 라이브러리는 수정 없이 계속 실행됩니다. 새 버전의 StreamInsight를 설치한 후 컴퓨터에서 다음 변경 내용을 볼 수 있습니다.

  • 새 어셈블리가 파일 시스템의 새 폴더에 설치됩니다. 예: C:\Program Files\Microsoft StreamInsight 1.1

  • 새 어셈블리가 이전에 설치된 버전과 함께 GAC(전역 어셈블리 캐시)에 설치됩니다.

  • Microsoft Visual Studio에서 설치된 버전의 모든 StreamInsight에 대해 개발을 수행할 수 있습니다. 설치된 각 버전에 대한 어셈블리가 참조 추가 대화 상자에 나타납니다.

  • 새 버전의 StreamInsight에 대해 응용 프로그램을 컴파일한 경우 이전 버전의 StreamInsight에 대해 실행하면 예외가 발생하면서 응용 프로그램이 실패합니다.

  • 런타임에 이전 버전에 대해 컴파일된 응용 프로그램 또는 라이브러리의 어셈블리 참조는 최신 버전의 어셈블리로 리디렉션됩니다. 이 리디렉션을 무시하려면 응용 프로그램의 구성 파일에 정보를 추가하여 설치된 게시자 정책을 무시할 수 있습니다. StreamInsight 응용 프로그램에 대한 app.config에서 <configuration><runtime><assemblyBinding> 태그 아래에 <publisherPolicy apply="no" />를 지정합니다. 다음 예와 같이 이러한 태그가 없으면 만듭니다.

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

    자세한 내용은 어셈블리 버전 리디렉션에서 "게시자 정책 무시" 섹션을 참조하십시오. 어셈블리 리디렉션을 무시하기로 선택한 경우 모든 StreamInsight 어셈블리에 대한 리디렉션을 무시하는지 확인합니다.

자세한 내용은 설치(StreamInsight)에서 "새 버전의 StreamInsight 설치"를 참조하십시오.

StreamInsight 메타데이터에서 문자열 비교

메서드 호출에서 StreamInsight 개체의 이름을 전달할 경우 문자열은 culture를 무시하는 방식으로 서수로만 비교됩니다. 결과적으로 일부 문자열은 해당 culture에서 실제로 동일한 경우에도 서수로 다르게 식별될 수 있습니다. 다음 메서드 및 속성 중 하나를 사용하여 새 개체를 만들거나 기존 개체를 검색할 때 이 문제가 발생할 수 있습니다.