첨부 실행 코드는 나눔고딕코딩 폰트를 사용합니다.
유용한 소스 코드가 있으면 icodebroker@naver.com으로 보내주시면 감사합니다.
블로그 자료는 자유롭게 사용하세요.

■ 인스턴스 생성하기

------------------------------------------------------------------------------------------------------------------------

using System;

using System.Reflection;

 

#region 인스턴스 생성하기 - CreateInstance(typeName, parameterArray)

 

/// <summary>

/// 인스턴스 생성하기

/// </summary>

/// <param name="typeName">타입명</param>

/// <param name="parameterArray">매개 변수 배열</param>

/// <returns>인스턴스</returns>

public object CreateInstance(string typeName, params object[] parameterArray)

{

    Type   type     = null;

    object instance = null;

 

    try

    {

        type = GetType(typeName);

 

        if(type == null)

        {

            return null;

        }

 

        instance = Activator.CreateInstance(type, parameterArray);

    }

    catch

    {

        return null;

    }

 

    return instance;

}

 

#endregion

#region 타입 구하기 - GetType(typeName)

 

/// <summary>

/// 타입 구하기

/// </summary>

/// <param name="typeName">타입명</param>

/// <returns>타입</returns>

private Type GetType(string typeName)

{

    Type type = Type.GetType(typeName, false);

 

    if(type != null)

    {

        return type;

    }

 

    Assembly[] assemblyArray = AppDomain.CurrentDomain.GetAssemblies();

 

    foreach(Assembly assembly in assemblyArray)

    {

        type = assembly.GetType(typeName, false);

 

        if(type != null)

        {

            break;

        }

    }

 

    return type;

}

 

#endregion

------------------------------------------------------------------------------------------------------------------------

Posted by 사용자 icodebroker

댓글을 달아 주세요