public Type GetObjectType(string tagPrefix, string typeName)
{
if (0 == string.Compare (tagPrefix, "asp", true, CultureInfo.InvariantCulture))
return typeof (System.Web.UI.WebControls.WebControl).Assembly.GetType ("System.Web.UI.WebControls."+typeName, true);
//look it up in reference directives
DocumentDirective[] directives = host.RootDocument.GetDirectives("Register");
foreach (DocumentDirective dd in directives)
if (0 == string.Compare (tagPrefix, dd["Tagprefix"], true, CultureInfo.InvariantCulture)) {
if (dd["Assembly"] == string.Empty || dd["Assembly"] == null)
//TODO: Usercontrols
throw new NotImplementedException ();
return typeRes.GetType (dd["Namespace"] + "." + typeName, true, true);
}
throw new Exception ("The tag prefix \"" + tagPrefix + "\" has not been registered");
}