"Enter"a basıp içeriğe geçin

C# Entity Mapping

    public static class EntityMapping
    {
        public static TToEntity To<TFromEntity, TToEntity>(TFromEntity fromEntity) where TToEntity : new()
        {
            var fromProperties = fromEntity.GetType().GetProperties();

            var mappingModel = new TToEntity();

            var toPropertyies = mappingModel.GetType().GetProperties();

            foreach (var toProperty in toPropertyies)
            {
                var propertyInfo = fromProperties.FirstOrDefault(m => m.Name == toProperty.Name);
                if (propertyInfo != null)
                {
                    var value = propertyInfo.GetValue(fromEntity, null);
                    if (value != null)
                    {
                        toProperty.SetValue(mappingModel, value);
                    }
                }
            }
            return mappingModel;
        }

        public static List<TToEntity> To<TFromEntity, TToEntity>(List<TFromEntity> fromEntities) where TToEntity : new()
        {
            var mappingModels = new List<TToEntity>();

            foreach (var fromEntity in fromEntities)
            {
                mappingModels.Add(To<TFromEntity, TToEntity>(fromEntity));
            }
            return mappingModels;
        }
    }

İlk Yorumu Siz Yapın

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir