datarowviewconverter.cs
来自「AJAX开发工具包」· CS 代码 · 共 59 行
CS
59 行
using System;
using System.Text;
using System.Data;
namespace AjaxPro
{
/// <summary>
/// Provides methods to serialize and deserialize a DataRowView object.
/// </summary>
public class DataRowViewConverter : IJavaScriptConverter
{
private string clientType = "Ajax.Web.DataRow";
public DataRowViewConverter() : base()
{
}
public override string Serialize(object o)
{
if(!(o is DataRowView))
throw new NotSupportedException();
StringBuilder sb = new StringBuilder();
DataRowView row = (DataRowView)o;
DataColumnCollection cols = row.DataView.Table.Columns;
int colcount = cols.Count;
bool b = true;
sb.Append("new ");
sb.Append(clientType);
sb.Append("([");
for(int i=0; i<colcount; i++)
{
if(b){ b = false; }
else{ sb.Append(","); }
sb.Append(JavaScriptSerializer.Serialize(row[cols[i].ColumnName]));
}
sb.Append("])");
return sb.ToString();
}
public override Type[] SerializableTypes
{
get
{
return new Type[]{typeof(DataRowView)};
}
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?