private MapComponent GetMapComponentFromViewModel(MapComponentViewModel mapcomponentvm)
        {
            MapComponent mapcomponent = null;

            if (mapcomponentvm.Id > 0)
            {
                ValidateMapComponentGenotype(mapcomponentvm.Id, mapcomponentvm.GenotypeId);
                mapcomponent = u_repo.GetMapComponent(mapcomponentvm.Id);
                mapcomponentvm.ToMapComponent(mapcomponent);
            }
            else
            {
                mapcomponent           = mapcomponentvm.ToMapComponent();
                mapcomponent.isRemoved = false;
            }


            if (mapcomponent.GenotypeId.HasValue)
            {
                mapcomponent.Genotype = u_repo.GetGenotype(mapcomponent.GenotypeId.Value);
            }

            if (mapcomponent.Map == null)
            {
                mapcomponent.Map = u_repo.GetMap(mapcomponent.MapId);
            }


            return(mapcomponent);
        }