sexta-feira, 13 de junho de 2008

SharePoint Escape Characters (Converter Functions)


SharePoint Escaped Function
This stuff is very useful to control a InternalName of the field, or verify the InternalName from the DisplayName in a list.

String format: “_x00” + + “_”


private string sharepointEscapedCharactersConverter(string myTextToConvert)
{
string[] charactersArrayString = {"ã","á","à","â","ä","Ã","Á",
"À","Â","Ä","é","è","ê","ë","É","È","Ê","Ë","í","ì","î","ï",
"Í","Ì","Î","Ï","ó","ò","ô","ö","õ","Ò","Ó","Ô","Ö","Õ","ú",
"ù","û","ü","Ù","Ú","Û","Ü","ç","Ç","ñ","Ñ","ª","º","(",")",
"!",@"\",@",","$","%","&","/","=","?","@","£","§","{","[",
"]","}","?","»","«","»","~","+","*",";","","¨",":"," "};

foreach (string myCharacter in charactersArrayString)
{
if (myTextToConvert.Contains(myCharacter))
{
myTextToConvert = myTextToConvert.Replace(myCharacter, myHexFunctionHelp(myCharacter));
}
}
return myTextToConvert;
}

private string myHexFunctionHelp(string charValue)
{
string myHexString = BitConverter.ToString(Encoding.Default.GetBytes(charValue));
string sharepointStartEscaped = "_x00";
string sharepointFinalEscaped = "_";
string result = sharepointStartEscaped + myHexString + sharepointFinalEscaped;
return result.ToLower();
}
ex:
sharepointEscapedCharactersConverter("Vários Números");
return “V_x00e1_rios_x0020_N_x00fa_meros”

URL-encoded Function
private string urlEncodedFunction(string myString)
{
string converted = HttpUtility.UrlEncode(myString);
return converted;
}


HTML-encoded Function


private string htmlEncodedFunction(string myString)
{
string converted = BitConverter.ToString(Encoding.Default.GetBytes(myString));
return converted;
}