private Dictionary<XmlQualifiedName, object> GetReferencedTypes()
{
if (_referencedTypesDictionary == null)
{
_referencedTypesDictionary = new Dictionary<XmlQualifiedName, object>();
//Always include Nullable as referenced type
//Do not allow surrogating Nullable<T>
_referencedTypesDictionary.Add(DataContract.GetStableName(Globals.TypeOfNullable), Globals.TypeOfNullable);
if (_referencedTypes != null)
{
foreach (Type type in _referencedTypes)
{
if (type == null)
throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidOperationException(SR.Format(SR.ReferencedTypesCannotContainNull)));
AddReferencedType(_referencedTypesDictionary, type);
}
}
}
return _referencedTypesDictionary;
}