public UserGroupModel Clone() { var user = new UserGroupModel { Id = Id, CreatedDate = CreatedDate, GroupCode = (string)GroupCode.Clone(), GroupName = (string)GroupName.Clone(), PermissionRank = PermissionRank }; if (AvaliableCommands != null) { foreach (var u in AvaliableCommands) { user.AvaliableCommands.Add((string)u.Clone()); } } return(user); }