다음을 통해 공유


.NET 클래스로 표시되는 메시지

이 방법에서는 먼저 메시지 유형을 정의하는 .NET 클래스를 만듭니다. 클래스에는 기본 생성자가 있어야 합니다. 그렇지 않은 경우 이 클래스를 사용하는 오케스트레이션은 컴파일되지 않습니다. 다음 예제에서는 이러한 클래스의 예를 보여 줍니다.

using System;  
using Microsoft.XLANGs.BaseTypes;  
Using PropertyNamespace;  
  
namespace NetClass  
{  
   [Serializable]  
   public class MsgClass  
   {  
      public MsgClass()  
      {  
         StrField = "OK";  
         IntField = 1;  
         ShortField = 1;  
      }  
  
      [PropertyNamespace.ShortPropertyName]  
      public Int16 ShortField;  
  
      [PropertyAttribute(typeof(PropertyNamespace.StringPropertyName)]  
      [DistinguishedFieldAttribute()]  
      public String StrField;  
  
      [DistinguishedFieldAttribute()]  
      public int IntField;  
   }  
}  

위 예제에서 ShortField는 PropertyNamespace.ShortPropertyName 형식의 속성이며, 이 속성의 기본 형식은 ShortField 형식인 Int16이어야 합니다. StrField는 고유 필드이면서 PropertyNamespace.StringPropertyName 형식의 속성이고, 이 속성의 기본 형식은 StrField 형식인 String 형식이어야 합니다. 일반적으로 PropertyNamespace.StringPropertyName 및 PropertyNamespace.ShortPropertyName은 모두 BizTalk 스키마 편집기를 통해 스키마 속성으로 만들어지며 C# 프로젝트에서 스키마 속성이 포함된 어셈블리를 참조해야 합니다.

참고

C# 프로그래밍 언어에서 특성 이름을 Attribute로 끝내는 것은 선택 사항이므로 Attribute로 끝내는 대신 DistinguishedField 또는 Property를 사용할 수 있습니다. 예를 들면 다음과 같습니다.

[Property(typeof(PropertyNamespace.StringPropertyName))]  
[DistinguishedField]  
public string StrField;  

메시지 유형을 정의한 후에는 이 유형의 새 메시지를 만드는 코드를 오케스트레이션에서 매우 쉽게 작성할 수 있습니다. 생성 메시지 셰이프 내에서 간단한 식을 작성하여 위에 표시된 MsgClass 형식의 새 메시지를 만든 다음 고유 필드로 특성이 지정된 필드에 값을 할당합니다(기본값을 재정의하려는 경우). MyMsg는 NetClass.MsgClass 유형의 오케스트레이션 메시지 변수입니다.

MyMsg = new NetClass.MsgClass();  
MyMsg.StrField = "Changed Value";  
MyMsg.IntField = 15;  

참고 항목

XSD 스키마로 표시되는 메시지
XLANGMessage로 표시되는 메시지
사용자 코드에서 메시지 생성