Как прочитать строку с кодировкой UTF8, используя linq для сущностей

Я пытаюсь прочитать таблицу 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 ответ

Решение

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

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

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

Другие вопросы по тегам