Catel.Runtime.Serialization.MemberValue.GetBestMemberType C# (CSharp) Méthode

GetBestMemberType() public méthode

Gets the the best member type. Code is equal to memberValue.ActualMemberType ?? memberValue.MemberType.
public GetBestMemberType ( ) : Type
Résultat System.Type
        public Type GetBestMemberType()
        {
            return ActualMemberType ?? MemberType;
        }
        #endregion

Usage Example

        /// <summary>
        /// Deserializes the object using the <c>Parse(string, IFormatProvider)</c> method.
        /// </summary>
        /// <returns>The deserialized object.</returns>
        protected virtual object DeserializeUsingObjectParse(ISerializationContext <TSerializationContext> context, MemberValue memberValue)
        {
            // Note: don't use GetBestMemberType, it could return string type
            var parseMethod = GetObjectParseMethod(memberValue.MemberType);

            if (parseMethod == null)
            {
                return(null);
            }

            var memberValueAsString = memberValue.Value as string;

            if (memberValueAsString == null)
            {
                return(null);
            }

            try
            {
                var obj = parseMethod.Invoke(null, new object[] { memberValueAsString, context.Configuration.Culture });
                return(obj);
            }
            catch (Exception ex)
            {
                Log.Warning(ex, $"Failed to deserialize type '{memberValue.GetBestMemberType().GetSafeFullName(false)}' using Parse(string, IFormatProvider)");
                return(null);
            }
        }
All Usage Examples Of Catel.Runtime.Serialization.MemberValue::GetBestMemberType