测试例:
pe.DATATABLE:获取数据的 DataTable 形式
pe.ToInsertSQL 转SQL INSERT语句
pe.ToUpdateSQL 转SQL UPDATE语句
</div>
public class PageElement : IDictionary<string, object>
{
public List<KeyValuePair<string, object>> list = new List<KeyValuePair<string, object>>();
public PageElement() { }
public PageElement(string XmlString)
{
LoadElementFromXMLString(XmlString);
}
/// <summary>
/// JSON属性
/// </summary>
public string JSON
{
get
{
if (list == null || list.Count == 0) return string.Empty;
{
string jsonstr = "{";
foreach (KeyValuePair<string, object> p in list)
{
jsonstr += p.Key + ":" + "\"" + p.Value.ToString() + "\",";
}
jsonstr = jsonstr.Substring(0, jsonstr.Length - 1);//去除最后一个逗号
jsonstr += "}";
return jsonstr;
}
}
}
/// <summary>
/// 是否已加载数据
/// </summary>
private bool _isloaded = false;
public bool IsLoaded
{
get
{
return _isloaded;
}
}
#region IDictionary<string,object> 成员
void IDictionary<string, object>.Add(string key, object value)
{
//key已存在,则不添加
foreach (KeyValuePair<string, object> k in list)
{
if (k.Key == key.Trim() || k.Key.ToLowerInvariant() == key.ToLowerInvariant().Trim())
{
return;
}
}
//向List中添加
list.Add(new KeyValuePair<string, object>(key, value));
}
public bool ContainsKey(string key)
{
foreach (KeyValuePair<string, object> k in list)
{
if (k.Key == key.Trim() || k.Key.ToLowerInvariant() == key.ToLowerInvariant().Trim())
{
return true;
}
}
return false;
}
public ICollection<string> Keys
{
get
{
string[] ks = new string[list.Count];
for (int i = 0; i < list.Count; i++)
{
ks[i] = list[i].Key;
}