smileNewfreedom

블로그 이미지
freedom 모든 자유와 시간을 위해.....
by 다크포스
12-04 01:23
  • 680,205Total hit
  • 0Today hit
  • 5Yesterday hit

CALENDAR

«   2021/12   »
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  

BankComponent Server

using System.EnterpriseServices;
[assembly: ApplicationName("BankComponent")]
[assembly: AssemblyKeyFileAttribute("Demos.snk")]

namespace BankComponentServer
{
      [Transaction(TransactionOption.Required)]
      public class Account : ServicedComponent
      {
            [AutoComplete]
            public bool Post(int accountNum, double amount)
            {
            // SetComplete를 호출하지 않고 데이터베이스를 업데이트합니다. 
            // 예외가 throw되지 않으면 SetComplete가 자동으로 호출됩니다. 
            }
      }
}

BankComponent Server 네임스페이스에 있는 코드는 .NET에서 COM+ 서비스를 얼마나 쉽게 사용할 수 있는지를 보여 줍니다. 아래 목록은 코딩에서 배포까지의 전체 프로세스에 대한 요약입니다.

  1. 서버 어셈블리를 작성합니다.
  2. 어셈블리 작성:
    1. 어셈블리에 서명합니다. 키 파일은 프로젝트마다 한 번만 생성될 수 있으므로 컴파일할 때마다 생성할 필요가 없습니다. 키는 Microsoft .NET 명령 프롬프트 및 sn.exe를 다음과 같이 사용하여 생성될 수 있습니다.
      sn –k Demos.snk
      
    2. 코드를 컴파일합니다. System.EnterpriseServices에 대한 참조가 추가되어야 합니다.
  3. 응용 프로그램을 배포합니다.

    서비스되는 구성 요소를 사용하는 어셈블리는 COM+ 카탈로그에 등록되어야 합니다. ServicedComponent 클래스와 사용자 지정 특성은 관리되는 코드에서 COM+ 서비스에 액세스하는 두 가지 핵심 개념입니다. 서비스의 구성은 COM+ 카탈로그에 저장됩니다. 개체는 CLR 내부에서 존재하고 실행됩니다. 관리되는 개체와 관련된 COM+ 컨텍스트는 그림 1에 표시되어 있으며 다음 두 절에서 자세히 설명합니다.

    그림 1. 관리되는 구성 요소와 연결된 서비스

    COM+ 구성 요소에서는 카탈로그를 수동으로 구성해야 하지만, 서비스되는 구성 요소에서는 카탈로그가 코드에 있는 특성을 기반으로 업데이트될 수 있습니다. 명령줄 도구 regsvcs.exe를 사용하거나 관리되는 API를 액세스하는 스크립트를 작성하여 어셈블리를 명시적으로 등록할 수 있습니다. 자세한 내용은 아래의 배포 정보 절을 참조하십시오. 개발하는 동안 편리한 때에 어셈블리를 응용 프로그램 디렉터리에 간단하게 복사하여 배포하는 XCopy 배포 기능이 제공됩니다. 클라이언트 응용 프로그램이 ServicedComponent에서 파생되는 클래스의 인스턴스를 만들 때마다 런타임에서 COM+ 응용 프로그램의 어셈블리가 이미 등록되어 있는지 여부를 검색합니다. 등록되어 있지 않을 경우 로컬 디렉터리에서 어셈블리를 검색하여, 어셈블리가 있으면 해당 어셈블리에 있는 모든 서비스된 구성 요소를 COM+ 응용 프로그램에 등록하여 활성화될 수 있는 상태로 만듭니다. 이 등록을 지연 등록이라 하지만, 모든 시나리오에 적용되지는 않습니다. 예를 들어, COM+ 서버 응용 프로그램으로 표시되는 어셈블리는 모두 명시적으로 등록해야 합니다(아래 참조). 지연 등록은 관리되는 서비스 구성 요소를 호출하는 관리되지 않는 클라이언트에는 적용되지 않습니다. 지연 등록은 개발 기간 동안에는 유용하지만, 그 외에는 스크립트, 코드 또는 RegSvcs를 사용하여 어셈블리를 등록합니다.

  4. 어셈블리를 GAC에 저장합니다. 자세한 내용은 배포 절을 참조하십시오.
  5. 클라이언트를 실행합니다.

'.NET' 카테고리의 다른 글

코드로 사용자 지정 페이지 로드  (0) 2007.09.10
XML 이해 ~~  (0) 2007.08.30
COM+ 사용  (0) 2007.08.24
.NET의 Enterprise Service(COM+)  (1) 2007.08.24
ASP.NET 웹 응용 프로그램의 페이지 및 응용 프로그램 컨텍스트  (2) 2007.08.22
component ; 컴포넌트  (0) 2007.08.21
TRACKBACK 0 AND COMMENT 0




ARTICLE CATEGORY

분류 전체보기 (534)
멋진 사진들 (8)
배경화면들 (3)
.NET (112)
연애이슈 (65)
게임관련 (15)
경제 이슈 (60)
모델 (0)
사진(취미) (14)
노래 (8)
호주워킹홀리데이 (11)
Javascript (2)
Ajax (4)
스포츠 (74)
우주/과학/생활 (95)
Windows 2008 (19)
Silverlight (2)
여행 (6)
MS 자격증 (2)
해외이슈 (4)
IT정보 (16)
Server (5)
애니매이션 (9)