我正在使用这样JavascriptSerializer
的自定义JavascriptConverter
:
public override IDictionary<string, object> Serialize(object obj, JavaScriptSerializer serializer)
{
SomeObjectModel TheObject = obj as SomeObjectModel;
Dictionary<string, object> OutputJson = new Dictionary<string, object>();
OutputJson.Add("SomeKey", SomeObjectModel.SomeProperty);
return OutputJson;
}
现在我希望能够SomeKey
在运行时动态更改,所以我想创建一个键字典,将此字典传递给序列化程序,然后执行以下操作:
OutputJson.Add(TheJsonDictionary.SomeKey, SomeObjectModel.SomeProperty);
但是,当我像这样向函数调用添加参数时:
public override IDictionary<string, object> Serialize(Dictionary<string, string> TheJsonDictionary, object obj, JavaScriptSerializer serializer)
我在编译时收到一条错误消息。现在我知道为什么会出现这个错误(抽象方法是用 2 个参数定义的,我传递了 3 个参数),我想知道如何解决这个问题,以便我可以传入字典来对键进行编码。
谢谢。