ASP.NET MVC 4
, C#
및 AutoMapper
을 사용하고 있습니다. 내 global.asax.cs에서 다른 프로젝트 (내 웹 응용 프로그램에서 참조 된 C# 프로젝트)에서 내 매핑을 등록하려고합니다. 나는 이러한 매핑을로드 할 방법이 내 global.asax.cs에서웹 프로젝트 외부의 어셈블리에서 클래스 가져 오기
namespace MyProject.Web.Core.Mappings
{
public class EmployeeMapping
{
public EmployeeMapping()
{
Mapper.CreateMap<Employee, EmployeeInfoViewModel>();
}
}
}
: 내 매핑이이 다른 프로젝트에서
, 여기에 샘플 클래스입니다. 나는 아래의 코드를 온라인으로 가지고 있지만,이 경우 EmployeeMapping에, 내 매핑 클래스를 따기되지 않습니다protected void AutoMapperConfig()
{
string mappingNamespace = "MyProject.Web.Core.Mappings";
var q = from t in Assembly.GetAssembly(typeof(string))
where t.IsClass && t.Namespace == mappingNamespace
select t;
q.ForEach(t => Debug.WriteLine(t.Name));
}
이 어떻게 (웹 프로젝트 이외의 다른 프로젝트에서) 특정 네임 스페이스에 내 수업을받을 수 있나요 및 Activator.CreateInstance
을 사용 하시겠습니까?
내가 원하는 것은 주어진 네임 스페이스에 지정된 클래스의 목록입니다.
? 이들은 모두 수업입니다. –
@BrendanVogt : 클래스 *는 * 유형입니다 - 클래스 만 원하면't.IsClass'를 다른 필터로 사용하십시오. –
나는 내가 TheType의 장소에 무엇을 넣어야하는지 의미했다. 당신은 알고 있는가? –