protected override string DebugText(string ns, string key, LanguageInfo language, ParameterSet dict)
        {
            if (DebugFormatter != null)
            {
                var text = GetTextEntry(ns, key, language, true);
                return DebugFormatter(ns, key, language, text, dict);
            }

            return base.DebugText(ns, key, language, dict);
        }
        public override bool PrepareTextSources(string ns = null, string key = null, LanguageInfo language = null)
        {
            if (ns!= null && NamespaceTextResolver != null)
            {
                lock (this)
                {
                    if (probedNamespaces.Contains(ns))
                    {
                        return false;
                    }

                    var asm = TypeFinder.GetFilteredLocalAssemblies(exclusionFilter:KnownAssemblyExclusionFilter).FirstOrDefault(x => {
                        try
                        {
                            //This will fail for certain assemblies in medium trust (e.g. mscorlib)
                            return GetNamespace(x) == ns;
                        }
                        catch
                        {
                            return false;
                        }
                    });

                    if (asm != null)
                    {
                        return PrepareTextSources(asm);
                    }
                    else
                    {
                        probedNamespaces.Add(ns);
                    }
                }
            }

            return false;
        }