Измените автоматически реализованные свойства на обычные и десериализацию с помощью BinaryFormatter

У меня есть объект со свойством, реализованным как

public String Bla {get;set;} 

После изменения реализации на что-то вроде

private String _bla;

public String Bla
{
    get { return _bla; }
    set { _bla = value; } 
} 

при десериализации это имущество пустует.

у меня есть много сериализованных данных из старой реализации, и я хотел бы загрузить их с новой реализацией

Есть ли способ, чтобы изменить implentation, чтобы быть совместимым со старыми двоичными файлами?

РЕДАКТИРОВАТЬ:

Некоторые люди могут столкнуться с той же проблемой, поэтому здесьмое хакерское решение:

автоматически сгенерированные поля имеют недопустимое соглашение об именах:

[CompilerGenerated]
private string k__BackingField;

[CompilerGenerated]
public void set_MyField(string value)
{
    this.k__BackingField = value;
}

[CompilerGenerated]
public string get_MyField()
{
    return this.k__BackingField;
}

быстрое и грязное решение для меня заключалось в создании частного вспомогательного поля под названиемxMyFieldxK__BackingField в источнике,

и исправление сериализованных двоичных данных путем замены всех вхождений сxMyFieldx до десериализации

Ответы на вопрос(2)

Ваш ответ на вопрос