view Source/Mapping/ObjectMapperAttribute.cs @ 9:1e85f66cf767 default tip

update bltoolkit
author nickolay
date Thu, 05 Apr 2018 20:53:26 +0300
parents f990fcb411a9
children
line wrap: on
line source

using System;

namespace BLToolkit.Mapping
{
	[AttributeUsage(AttributeTargets.Class | AttributeTargets.Interface)]
	public sealed class ObjectMapperAttribute : Attribute
	{
		public ObjectMapperAttribute(Type objectMapperType)
		{
			if (objectMapperType == null) throw new ArgumentNullException("objectMapperType");

			_objectMapper = Activator.CreateInstance(objectMapperType) as ObjectMapper;

			if (_objectMapper == null)
				throw new ArgumentException(
					string.Format("Type '{0}' does not implement IObjectMapper interface.", objectMapperType));
		}

		private readonly ObjectMapper _objectMapper;
		public           ObjectMapper  ObjectMapper
		{
			get { return _objectMapper; }
		}
	}
}