protected override void Load(XElement e) { var typeName = e.GetAttributeValue("language", false); if (typeName != null) { if (typeName.Equals("C#", StringComparison.OrdinalIgnoreCase)) // convenient name for default C# implementation Language = new XiptonCSharpCodeLanguage(); else if (typeName.Equals("VB", StringComparison.OrdinalIgnoreCase)) // convenient name for default VB implementation Language = new XiptonVBCodeLanguage(); else Language = Type.GetType(typeName, true).CreateInstance().CastTo<RazorCodeLanguage>(); } typeName = e.GetAttributeValue("baseType", false); BaseType = typeName != null ? Type.GetType(typeName, true) : BaseType; DefaultExtension = (e.GetAttributeValue("defaultExtension", false) ?? DefaultExtension).EmptyAsNull(); AutoIncludeName = (e.GetAttributeValue("autoIncludeName", false) ?? AutoIncludeName).EmptyAsNull(); SharedLocation = (e.GetAttributeValue("sharedLocation", false) ?? SharedLocation).EmptyAsNull(); var setting = e.GetAttributeValue("includeGeneratedSourceCode", false); if (setting != null) IncludeGeneratedSourceCode = bool.Parse(setting); setting = e.GetAttributeValue("htmlEncode", false); if (setting != null) HtmlEncode = bool.Parse(setting); }
protected internal override void SetDefaults() { BaseType = typeof(TemplateBase); Language = new XiptonCSharpCodeLanguage(); AutoIncludeName = "_viewStart"; DefaultExtension = ".cshtml"; SharedLocation = "~/Shared"; IncludeGeneratedSourceCode = false; HtmlEncode = true; }