다음을 통해 공유


.NET Framework 3.0과 .NET Framework 3.5 간의 일반 규칙 변경 내용

.NET Framework 3.0의 일부 규칙 기능이 .NET Framework 3.5에서 변경되었습니다. 다음 목록에 이러한 변경 내용이 자세히 나와 있습니다.

  • 규칙 작업에서 nullable 형식이 Null 참조(Visual Basic에서는 Nothing)보다 크다고 나타내면 .NET Framework 3.0의 규칙 엔진에서는 해당 비교가 항상 true로 확인되고, .NET Framework 3.5에서는 C#의 경우와 동일하게 false로 확인됩니다. .NET Framework 3.0에서 이 문제를 해결하려면 nullable 형식과 값을 비교하기 전에 Null 참조(Visual Basic에서는 Nothing)에 대한 사용자 지정 검사를 수행해야 합니다.
  • 사용자 지정 조건은 런타임에 반환할 형식을 디자인 타임에 규칙 엔진에 알립니다. .NET Framework 3.0에서는 사용자 지정 조건이 디자인 타임에 지정된 것과 다른 형식을 런타임에 반환할 수 있지만 .NET Framework 3.5에서는 그렇게 할 수 없습니다.
  • .NET Framework 3.0에서 stringchar 데이터 형식을 함께 연결하면 잘못된 결과가 생성됩니다. 예를 들어, string "s"를 char 'c'와 연결하면 결과 연결은 "s43"이 됩니다. .NET Framework 3.5에서는 연결의 결과가 "sc"입니다. .NET Framework 3.0에서 올바른 결과를 얻으려면 연결하기 전에 char 데이터 형식을 string으로 캐스팅합니다.
  • .NET Framework 3.0에서 | 및 &와 같은 논리 연산자를 사용하여 두 nullable bool 데이터 형식을 비교하는 경우 두 bool 중 하나가 Null 참조(Visual Basic에서는 Nothing)로 설정되어 있으면 Null 참조(Visual Basic에서는 Nothing)이 반환됩니다. 이 동작은 C# 사양에 정의된 동작과 다릅니다. .NET Framework 3.5에서 두 부울 값의 비교 동작은 이제 C# 3.0 사양(영문 페이지일 수 있음)에 정의된 동작과 일치합니다. .NET Framework 3.0에서 올바른 결과를 얻으려면 nullable bool 데이터 형식에 대한 사용자 지정 검사를 수행해야 합니다. 규칙 정의에서 C# 코드를 다시 사용하는 경우 C# 규칙과 WF 규칙의 동작 차이를 수용하도록 C# 코드를 변경해야 합니다.
  • .NET Framework 3.0에서는 사용자 지정 규칙 조건에서 ActivityExecutionContext 개체에 액세스할 수 없지만 .NET Framework 3.5에서는 액세스할 수 있습니다.

참고 항목

기타 리소스

.NET Framework 3.5의 규칙 변경 내용

Copyright © 2007 by Microsoft Corporation. All rights reserved.