Как прочитать строку с кодировкой UTF8, используя linq для сущностей - PullRequest
2 голосов
/ 06 декабря 2011

Я пытаюсь прочитать таблицу LimeSurvey , используя Linq для сущностей. Моя проблема в том, что LimeSurvey хранит строки в UTF8, а .Net это не нравится ...

Итак, у меня есть простая функция для составления списка всех моих опросов, как я могу сказать Linq читать строки в формате UTF8?

Моя функция:

public static List<Lime_Surveys> List()
    {
        using (LimeSurveyEntities db = new LimeSurveyEntities())
        {

            IQueryable<Lime_Surveys> list = db.Lime_Surveys.Include("Lime_Surveys_LanguageSettings");

            return list.ToList();
        }
    }

1 Ответ

4 голосов
/ 07 декабря 2011

Вам необходимо изменить кодировку строки, которую вы читаете, используя

Encoding.UTF8.GetString(Encoding.Default.GetBytes(yourstring))

Проверьте этот ответ: Получить правильный вывод из UTF-8, хранящегося в VarChar, с использованием Entity Framework или Linq2SQL?

...