public Type FindViewType(string viewModelName) { LoadViewModelTypes(); if (viewModelName.ToUpperInvariant().EndsWith("VIEWMODEL")) { System.Diagnostics.Debug.WriteLine($"New viewModel {viewModelName}"); if (_viewModelTypes.Any(kvp => kvp.Key.ToUpperInvariant() == viewModelName.ToUpperInvariant())) { var viewName = viewModelName.Substring(0, viewModelName.Length - "MODEL".Length); System.Diagnostics.Debug.WriteLine("Searching for view name " + viewName); return(_viewRepository.GetViewType(viewName)); } else { throw new ArgumentException($"{viewModelName} could not be found...."); } } else { throw new ArgumentException($"{viewModelName} could not be found...."); } }