PushNotificationでタイルを更新できるんだけども、@から始まる文字列を投げつけると化ける。化けるというより、なんかへんてこな文字列が表示される。
おいバグじゃねーの!と思ってフォーラムに突撃してみたら、中の人からこんな答えが。
それ@から始まるのはリソース探しに行ってるからだと思う!
回避の仕方ここに書いてあるから参考にしてね!(超意訳)
http://blogs.msdn.com/b/ptorr/archive/2011/07/12/background-agents-part-3-of-3.aspx
要するに@から始まるのはリソースを探しに行ってしまうから@以外からはじまるようにすればいいよ!とのこと。
で、回避の方法はZeroWidthSpaceを先頭に入れればいいよ!っていうなんとも運用で回避的な方法…
コードだとこんな感じだそうです。
/// <summary> /// ゼロ幅スペース。@のエスケープする用。 /// </summary> const char ZWSP = (char)8203; // 先頭が@から始まるなら0幅スペースを追加する string backText = tileData.BackText; if (backText.StartsWith("@")) backText = ZWSP + backText;