public static void Main()
string i = ""; string f = "";
Console.WriteLine("{0} : {1} => {2}", i, f, ResolveLanguagePref(i, f));
Console.WriteLine("{0} : {1} => {2}", i, f, ResolveLanguagePref(i, f));
Console.WriteLine("{0} : {1} => {2}", i, f, ResolveLanguagePref(i, f));
Console.WriteLine("{0} : {1} => {2}", i, f, ResolveLanguagePref(i, f));
i = "English"; f = "English";
Console.WriteLine("{0} : {1} => {2}", i, f, ResolveLanguagePref(i, f));
Console.WriteLine("{0} : {1} => {2}", i, f, ResolveLanguagePref(i, f));
i = "EN"; f = "English - American";
Console.WriteLine("{0} : {1} => {2}", i, f, ResolveLanguagePref(i, f));
i = "EN"; f = "English - UK";
Console.WriteLine("{0} : {1} => {2}", i, f, ResolveLanguagePref(i, f));
i = "SP"; f = "English - American";
Console.WriteLine("{0} : {1} => {2}", i, f, ResolveLanguagePref(i, f));
Console.WriteLine("{0} : {1} => {2}", i, f, ResolveLanguagePref(i, f));
i = "FR"; f = "English - American";
Console.WriteLine("{0} : {1} => {2}", i, f, ResolveLanguagePref(i, f));
Console.WriteLine("{0} : {1} => {2}", i, f, ResolveLanguagePref(i, f));
Console.WriteLine("{0} : {1} => {2}", i, f, ResolveLanguagePref(i, f));
i = "French"; f = "Spanish";
Console.WriteLine("{0} : {1} => {2}", i, f, ResolveLanguagePref(i, f));
i = "French"; f = "Hindi";
Console.WriteLine("{0} : {1} => {2}", i, f, ResolveLanguagePref(i, f));
i = "SP"; f = "English - American";
Console.WriteLine("{0} : {1} => {2}", i, f, ResolveLanguagePref(i, f));
i = "FR"; f = "English - American";
Console.WriteLine("{0} : {1} => {2}", i, f, ResolveLanguagePref(i, f));
private static string ResolveLanguagePref(string inputLangPref, string factorLangPref)
inputLangPref = String.IsNullOrWhiteSpace(inputLangPref) ? "English" : inputLangPref;
factorLangPref = String.IsNullOrWhiteSpace(factorLangPref) ? "English" : factorLangPref;
switch (inputLangPref.ToUpper())
inputLangPref = "English";
inputLangPref = "Spanish";
if (factorLangPref.ToUpper().Contains("ENGLISH"))
factorLangPref = "English";
if (factorLangPref != "English") return factorLangPref;
else return inputLangPref;