私はCKEditorを使用していますが、正しいキーを押すと、次のUnicode文字をテキストエリアに挿入できるようです。
U+200B \xe2\x80\x8b ゼロ幅スペース
これをMySQLデータベースに保存しようとすると、次のエラーが発生します:-
MySql.Data.MySqlClient.MySqlException
Incorrect string value: '\xE2\x80\x8B </...' for column 'Content' at row 1
私が見ることができるものから、いくつかのオプションがあります:-
- テーブルの照合順序を変更しますが、これが NHibernate を ORM として使用する C# MVC4 アプリケーションにどのような影響を与えるかは完全にはわかりません
- データベースに挿入する前に、文字列からユニコードを取り除きますが、これを行う方法が完全にわかっているわけではありません。
- これは特定のブラウザーの CKEditor のバグのようですが、修正を待たずに将来的に証明したいと思います。
だから私の質問は、この問題を回避するための最良の選択肢は何ですか?