Символы Å Ä Ö не отображаются в моем DDL, как я могу указать restclient использовать определенный набор символов?

Прежде чем я начну, вот проблема. Должно быть так:

Björn Nilsson, вместо отображения странных специальных символов все значения, содержащие символы Å, Ä и Ö, становятся такими.

enter image description here

Я заполняю свой DDL значениями из API в формате XML, в котором есть все значения, и мы также используем для этого Linq2Rest.

Вот как выглядит процесс

 private readonly RestContext<ADConsultants> restContext;

public ConsultantContext(Uri uri, Format format)
{
    restContext = new RestContext<ADConsultants>(GetRestClient(uri, format), GetSerializerFactory(format));
}
public enum Format
{
    Pox,
    Json
}

private static readonly IEnumerable<Type> knownTypes = new[] {typeof (ADConsultants)};

public static IRestClient GetRestClient(Uri uri, Format format)
{
    switch (format)
    {
        case Format.Pox:
            return new XmlRestClient(uri);
        case Format.Json:
            return new JsonRestClient(uri);
        default:
            throw new NotImplementedException();
    }
}
private static ISerializerFactory GetSerializerFactory(Format format)
{
    switch (format)
    {
        case Format.Pox:
            return new XmlSerializerFactory(knownTypes);
        case Format.Json:
            return new JsonNetSerializerFactory();
        default:
            throw new NotImplementedException();
    }

}
public IQueryable<ADConsultants> Consultant
{
    get { return restContext.Query; }
}

}

Это мой класс JsonNetSerializerFactory:

public class JsonNetSerializerFactory :ISerializerFactory 
{
    public ISerializer<T> Create<T>()
    {
        return new JsonNetSerializer<T>();
    }
    public class JsonNetSerializer<T> : ISerializer<T>
    {
        public T Deserialize(string input)
        {
            return JsonConvert.DeserializeObject<T>(input);
        }

        public IList<T> DeserializeList(string input)
        {
            return JsonConvert.DeserializeObject<IList<T>>(input);
        }
    }
}

А это внутри моего контроллера:

var consultants = new ConsultantContext(
        new Uri("http://adress:port/api/consultants"),
                ConsultantContext.Format.Json)
                    .Consultant
                    .Where(x => x.Office == "Örebro")  
                    .OrderBy(x => x.DisplayName)  
                    .ToList() 
                    .Select(x => new
                    {
                        name = x.DisplayName
                    });

Я провел тест, выполнив это:

name = "åäö"

и он работал нормально , ddl значения были "åäö"

Приветствуется любая помощь в том, как исправить, чтобы символы Å Ä Ö отлично работали как значения в моем DDL.

Заголовок HTTP имеет формат utf-8, он также присутствует в моем html-содержимом. Это должен быть XML, который нужно установить для определенной кодировки. Как я могу это сделать?

Заранее спасибо!

5
задан Obsivus 16 May 2012 в 10:16
поделиться