MvvmCross.Core.ViewModels.MvxViewModelViewTypeFinder.LookupAssociatedConcreteViewModelType C# (CSharp) Method

LookupAssociatedConcreteViewModelType() protected method

protected LookupAssociatedConcreteViewModelType ( Type candidateType ) : Type
candidateType System.Type
return System.Type
        protected virtual Type LookupAssociatedConcreteViewModelType(Type candidateType)
        {
            var viewModelPropertyInfo = candidateType
                .GetProperties()
                .FirstOrDefault(x => x.Name == "ViewModel"
                                     && !x.PropertyType.GetTypeInfo().IsInterface
                                     && !x.PropertyType.GetTypeInfo().IsAbstract);

            return viewModelPropertyInfo?.PropertyType;
        }