示例#1
0
 protected internal override void SetDefaults()
 {
     BaseType                   = typeof(TemplateBase);
     Language                   = new XiptonCSharpCodeLanguage();
     AutoIncludeName            = "_viewStart";
     DefaultExtension           = ".cshtml";
     SharedLocation             = "~/Shared";
     IncludeGeneratedSourceCode = false;
     HtmlEncode                 = true;
 }
示例#2
0
        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);
            }
        }