【问题标题】:Serializing/Deserializing JSON in Dynamics CRM 2013/2015 Plugin在 Dynamics CRM 2013/2015 插件中序列化/反序列化 JSON
【发布时间】:2015-10-08 08:05:41
【问题描述】:

我正在为 Dynamics 2015 开发一个插件。该插件需要一些设置信息,我认为在不安全的配置中使用 json 对象是一个好主意。此外,还有一个外部系统正在将一些 json 写入该插件响应的实体中的一个字段中,我需要从中提取信息。

我曾尝试使用 JavascriptSerializer 对象来反序列化 json,但我得到一个 System.MethodAccessException,经过一些研究,我发现我无法在沙盒模式下使用 JavascriptSerializer。

我不想将 Json.Net ILMerge 合并到我的程序集中,那么有没有其他方法可以在我的插件代码中序列化/反序列化 json?

【问题讨论】:

标签: c# json serialization dynamics-crm


【解决方案1】:

这就是我解决这个问题的方法

给定

 string wsData = string.Empty;
 plItem.GetType() == typeof(CategoryInfo);

 [DataContract]
 public class CategoryInfo{
    [DataMember]
    public string AllPropertiesToSerialize{ get; set; }
 }  

然后

using (var ms = new MemoryStream())
{
     var js = new DataContractJsonSerializer(typeof(CategoryInfo));
     js.WriteObject(ms, plItem);
     ms.Position = 0;
     var sr = new StreamReader(ms);
     wsData = sr.ReadToEnd();
}

感谢@dbc 和@Guido Preite 的指点

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-14
    • 1970-01-01
    • 2019-11-17
    相关资源
    最近更新 更多