Проблема, которую я пытаюсь решить, заключается в том, что мне нужно сериализовать объект / пре / пост-образ объекта в строку json. Я знаю, что мы не можем включать библиотеки плагинов в плагины, так как ILmerge не подходит. Это то, что я попробовал:
var jStr = Serialize((Entity)excutionContext.InputParameters["Target"]);
public static string Serialize<TEntity>(TEntity dataObject)
{
using (var stream = new MemoryStream())
{
var serializer = new DataContractJsonSerializer(typeof(TEntity));
serializer.WriteObject(stream, dataObject);
return Encoding.UTF8.GetString(stream.ToArray());
}
}
Но я получаю следующее исключение и не могу понять, что мне делать, чтобы решить то же самое:
System.Security.SecurityException: ' Тип контракта данных 'System.Collections.Generi c .KeyValuePair`2 [[System.String, mscorlib, Версия = 4.0.0.0, Культура = нейтральный, PublicKeyToken = b77a5c561934e089], [System.Object, mscorlib, Версия = 4.0 .0.0, Culture = нейтральный, PublicKeyToken = b77a5c561934e089]] 'не может быть сериализован при частичном доверии, потому что элемент' key 'не опубликован c.'