728x90
728x170
■ 인스턴스를 생성하는 방법을 보여준다.
▶ 예제 코드 (C#)
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
728x90
그리드형(광고전용)
'C# > Common' 카테고리의 다른 글
[C#/COMMON] 대용량 정렬 리스트 사용하기 (0) | 2020.02.07 |
---|---|
[C#/COMMON] RegistryKey 클래스 : 신뢰할 수 있는 사이트 등록하기 (0) | 2020.02.03 |
[C#/COMMON] 타입(Type) 헬퍼 클래스 사용하기 (0) | 2020.02.02 |
[C#/COMMON] 인스턴스 직렬화 처리하기 (0) | 2020.02.02 |
[C#/COMMON] COM 인스턴스 생성하기 (0) | 2020.02.02 |
[C#/COMMON] 인스턴스 생성하기 (0) | 2020.02.02 |
[C#/COMMON] Type 클래스 : 타입명으로 타입 구하기 (0) | 2020.02.02 |
[C#/COMMON] 메소드 실행하기 (0) | 2020.02.02 |
[C#/COMMON] Stream 클래스 : 스트림 복사하기 (0) | 2020.02.02 |
[C#/COMMON] IDataReader 인터페이스 : 열거 가능형 구하기 (0) | 2020.02.02 |