我有一个如下所示的对象模型:
public MyObjectInJson
{
public long ObjectID {get;set;}
public string ObjectInJson {get;set;}
}
Run Code Online (Sandbox Code Playgroud)
该属性ObjectInJson是已经序列化的版本,包含嵌套列表的对象.目前,我正在MyObjectInJson手动序列化这样的列表:
StringBuilder TheListBuilder = new StringBuilder();
TheListBuilder.Append("[");
int TheCounter = 0;
foreach (MyObjectInJson TheObject in TheList)
{
TheCounter++;
TheListBuilder.Append(TheObject.ObjectInJson);
if (TheCounter != TheList.Count())
{
TheListBuilder.Append(",");
}
}
TheListBuilder.Append("]");
return TheListBuilder.ToString();
Run Code Online (Sandbox Code Playgroud)
我想知道我是否可以替换这种危险的代码JavascriptSerializer并得到相同的结果.我该怎么做?
谢谢.
我目前正在将代码从app_code文件夹移动到类库.我用[System.Web.Script.Serialization.ScriptIgnore]属性标记了几个方法.我的类库无法看到此命名空间.我的添加引用对话框无法看到此命名空间.如何在类库中正确使用此标记?
这是错误: 找不到类型或命名空间名称'ScriptIgnoreAttribute'(您是否缺少using指令或程序集引用?)
假设我有一个对象MyObject,如下所示:
public class MyObject
{
int ObjectID {get;set;}
string ObjectString {get;set;}
}
Run Code Online (Sandbox Code Playgroud)
我有一个MyObject列表,我想用一个带有stringbuilder的json字符串转换它.我知道如何创建一个JavascriptConverter并通过传递一个列表并让转换器构建字符串来创建一个json字符串但在这种特殊情况下我希望避免开销并直接转到列表中带有foreach循环的json字符串像这样:
StringBuilder JsonString = new StringBuilder();
foreach(MyObject TheObject in ListOfMyObject)
{
}
Run Code Online (Sandbox Code Playgroud)
我试图通过附加逗号和引号来使用此方法,但它尚未解决(尚未).
谢谢你的建议.
我需要什么库参考使用System.Web.Script.Serialization的Class Library?
System.Web已被引用但使用System.Web.Script.Serialization; 仍然失败了.目标框架是4.0.在WebApplication项目中,一切都很好.