Asp.net 从代码隐藏文件创建JSon数组
如何使用asp.net、c#创建如下所示的arraylist。我可以使用创建这样的数组,但不想在解决方案中添加任何其他dllAsp.net 从代码隐藏文件创建JSon数组,asp.net,asp.net-mvc,asp.net-mvc-3,asp.net-mvc-2,asp.net-ajax,Asp.net,Asp.net Mvc,Asp.net Mvc 3,Asp.net Mvc 2,Asp.net Ajax,如何使用asp.net、c#创建如下所示的arraylist。我可以使用创建这样的数组,但不想在解决方案中添加任何其他dll [{ "id": "slide-img-1", "client": "nature beauty", "desc": "nature beauty photography" }, { "id": "slide-img
[{ "id": "slide-img-1", "client": "nature beauty", "desc": "nature beauty photography" },
{ "id": "slide-img-2", "client": "nature beauty", "desc": "add your description here" },
{ "id": "slide-img-3", "client": "nature beauty", "desc": "add your description here" },
{ "id": "slide-img-4", "client": "nature beauty", "desc": "add your description here" },
{ "id": "slide-img-5", "client": "nature beauty", "desc": "add your description here" },
{ "id": "slide-img-6", "client": "nature beauty", "desc": "add your description here" },
{ "id": "slide-img-7", "client": "nature beauty", "desc": "add your description here"}];
谢谢
Ashish使用.NET framework附带的
JavaScriptSerializer
类
看一看
您可以使用:
假设数组中的实体类似于:
public class Entity
{
public string id { get; set; }
public string client { get; set; }
public string desc {get; set; }
[ScriptIgnore]
public string PropertyThatIsIgnored { get;set; }
}
那么它是可用的,如下所示:
Entity[] entities = ...;
JavaScriptSerializer serializer = new JavaScriptSerializer();
string json = serializer.Serialize(entities);
另一方面,如果需要更复杂的序列化,您可以考虑使用,因为它允许.< /p>我有多个变量的列表。我只想要id、client和desc。@ashish.chotalia我已经更新了我的答案,以显示如何忽略属性,但是如果您希望更改属性名称,我建议使用
DataContractJsonSerializer
。是的,这是可行的。你能告诉我如何自动生成id吗?@ashish.chotalia请问一个单独的问题,因此需要更多的信息-你希望在什么时候生成id,它将如何映射回你的实体等。
Entity[] entities = ...;
JavaScriptSerializer serializer = new JavaScriptSerializer();
string json = serializer.Serialize(entities);