}
var namespaceuri = nsResolver.LookupNamespace(prefix) ?? "";
- var xmltype = new XmlType(namespaceuri, type.Name, null);
+ var xmltype = new XmlType(namespaceuri, type?.Name, null);
if (type == null)
throw new NotSupportedException();
}
if (propertyType.IsAssignableFrom(resource?.GetType()))
return resource;
- var implicit_op = resource.GetType().GetImplicitConversionOperator(fromType: resource.GetType(), toType: propertyType)
- ?? propertyType.GetImplicitConversionOperator(fromType: resource.GetType(), toType: propertyType);
+ var implicit_op = resource?.GetType().GetImplicitConversionOperator(fromType: resource?.GetType(), toType: propertyType)
+ ?? propertyType.GetImplicitConversionOperator(fromType: resource?.GetType(), toType: propertyType);
if (implicit_op != null)
return implicit_op.Invoke(resource, new [] { resource });
if (opImplicit != null) {
//convert the OnPlatform<T> to T
- var opPlatformImplicitConversionOperator = resource.GetType().GetImplicitConversionOperator(fromType: resource.GetType(), toType: tType);
+ var opPlatformImplicitConversionOperator = resource?.GetType().GetImplicitConversionOperator(fromType: resource?.GetType(), toType: tType);
resource = opPlatformImplicitConversionOperator?.Invoke(null, new[] { resource });
//and convert to toType