Когда я компилирую, словарь модели Type перестает работать.
[Test]
public void TestCompileSerialization()
{
var data = new Dictionary<int, int>();
data[1] = 1;
var typeModel = TypeModel.Create();
var compiledTypeModel = typeModel.Compile();
using (var memory = new MemoryStream())
{
compiledTypeModel.Serialize(memory, data);
}
}
Этот тест выдает
Type is not expected, and no contract can be inferred: System.Collections.Generic.KeyValuePair`2[[System.Int32, System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.Int32, System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]
Нужно ли мне добавлять каждый словарь, который я хочу сериализовать, в TypeModel или там? Есть ли другие способы?
Кстати, я не понимаю, почему я должен все публиковать c, когда я хочу прекомпилировать сериализаторы?