DasBlog Usability Alert: Template Changes to enable Turkish Users May 31, '05 Comments [5] Posted in ASP.NET | DasBlog Sponsored By DasBlog uses a poor man's macro language in our templates to make it easy to change the skin of a whole blog. The macros allow folks to call methods from our templates, with or without parameters. We use some reflection code like this: MemberInfo[] members = subexObject.GetType().FindMembers( MemberTypes.Field|MemberTypes.Method|MemberTypes.Property, BindingFlags.IgnoreCase|BindingFlags.Instance|BindingFlags.Public, new MemberFilter(this.IsMemberEligibleForMacroCall), subex.Trim()); Where "subex" contains a string like "items" that was extracted from one of our template files that included a macro string like <%items%> indicating to dasBlog to insert a list of blog items here. However, when someone using a Turkish browser comes to a site running dasBlog they see NOTHING. Zip. Why? In Turkish, there are four letter "I's. In English our i becomes I when capitalized. However, in Turkish, i becomes İ and ı becomes I. Notice the dots. Also, notice that we use BindingFlags.IgnoreCase in our call to FindMembers(). I suspect that the "items" is becoming "Items" internally (perhaps an in appropriate call to ToUpper()?) but I can't find an implementation with Reflector that even looks at BindingFlags.IgnoreCase. Regardless, we fail to call the method and get a System.MissingMemberException or System.MissingMethodException. ACTION REQUIRED: The solution is, for now, for all you folks running dasBlog, to go into your *.template files and make these quick and easy changes (there isn't yet an easy code change, and it's not just a ToUpper() situation): Change <%items%> to <%Items%> Change <%itemTitle%> to <%ItemTitle%> Change <%itemText%> to <%ItemText%> I'll make changes to all the default dasBlog templates while I look for a more correct solution in code and/or determine if this is a limitation in FindMembers(). « My Picks for TechEd 2005 Sessions | Blog Home | A GrokTalk Banner for you to spread arou... » About Scott Scott Hanselman is a former professor, former Chief Architect in finance, now speaker, consultant, father, diabetic, and Microsoft employee. He is a failed stand-up comic, a cornrower, and a book author. About Newsletter Sponsored By Hosting By