이 설명서는 보관되지만 유지 되지 않습니다.

FaultContractAttribute 생성자

업데이트: 2007년 11월

FaultContractAttribute 클래스의 새 인스턴스를 초기화합니다.

네임스페이스:  System.ServiceModel
어셈블리:  System.ServiceModel(System.ServiceModel.dll)

public FaultContractAttribute(
	Type detailType
)
public FaultContractAttribute(
	Type detailType
)
public function FaultContractAttribute(
	detailType : Type
)

매개 변수

detailType
형식: System.Type
호출자에 대한 오류 정보가 포함된 serialize할 수 있는 형식입니다.

예외상황
ArgumentNullException

detailType 인수가 null인 경우

일반적으로 생성자는 서비스 메서드에 특성을 적용하고 형식을 특성의 인수로 지정하여 실행됩니다.

다음 코드 예제에서는 FaultContractAttribute를 사용하여 SampleMethod 작업에서 세부 유형이 GreetingFault인 SOAP 오류를 반환할 수 있도록 지정하는 방법을 보여 줍니다.

using System;
using System.Collections.Generic;
using System.Net.Security;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.Text;

namespace Microsoft.WCF.Documentation
{
  [ServiceContract(Namespace="http://microsoft.wcf.documentation")]
  public interface ISampleService{
    [OperationContract]
    [FaultContractAttribute(
      typeof(GreetingFault),
      Action="http://www.contoso.com/GreetingFault",
      ProtectionLevel=ProtectionLevel.EncryptAndSign
      )]
    string SampleMethod(string msg);
  }

  [DataContractAttribute]
  public class GreetingFault
  { 
    private string report;

    public GreetingFault(string message)
    {
      this.report = message;
    }

    [DataMemberAttribute]
    public string Message
    {
      get { return this.report; }
      set { this.report = value; }
    }
  }

  class SampleService : ISampleService
  {
  #region ISampleService Members

  public string  SampleMethod(string msg)
  {
    Console.WriteLine("Client said: " + msg);
    // Generate intermittent error behavior.
    Random rand = new Random(DateTime.Now.Millisecond);
    int test = rand.Next(5);
    if (test % 2 != 0)
      return "The service greets you: " + msg; 
    else
      throw new FaultException<GreetingFault>(new GreetingFault("A Greeting error occurred. You said: " + msg));
  }

  #endregion
  }
}


  • 직접 실행 호출자의 경우 완전히 신뢰합니다. 이 멤버는 부분적으로 신뢰할 수 있는 코드에서 사용할 수 없습니다. 자세한 내용은 부분 신뢰 코드에서 라이브러리 사용을 참조하십시오.

Windows Vista, Windows XP SP2, Windows Server 2003

.NET Framework 및 .NET Compact Framework에서 모든 플랫폼의 전체 버전을 지원하지는 않습니다. 지원되는 버전의 목록을 보려면 .NET Framework 시스템 요구 사항을 참조하십시오.

.NET Framework

3.5, 3.0에서 지원
표시: