公司做一个药品监控系统(web),目前负责对监控问题添加屏蔽规则功能。由于药品问题要分成
<strong>问题级别 - 问题类型 - 问题具体结果类</strong>型 三层级别,以这三个级别,分成大组,再分成小组。由于本人烦于写存储过程,在sql 中使用语句频繁查询,性能又不好。于是想到利用
<br> SortedList的自动排序和分组的功能,做了一个模板。觉得挺好用的,分享一下!
<br>
<p><strong> 数据结构如下:</strong></p>
<p></p>
<pre class="blockcode"><code class="language-csharp">namespace CRMS.Web.Query.ProblemPrescription
{
public partial class ProblemDetail : CRMS.Web.Base.BasePage
{
// 由于datarow的构造函数是protected,这里巧妙地构造自定义table, 可以获取自定义datarow
private DataTable simpleTable = null;
public DataTable SimpleTable
{
set { this.simpleTable = value; }
get
{
if (simpleTable == null)
{
simpleTable = new DataTable();
System.Type stringType = System.Type.GetType("System.String");
simpleTable.Columns.Add(new DataColumn("cli_lvl_code", stringType));
simpleTable.Columns.Add(new DataColumn("cli_lvl_name", stringType));
simpleTable.Columns.Add(new DataColumn("cli_title_code", stringType));
simpleTable.Columns.Add(new DataColumn("cli_title_name", stringType));
simpleTable.Columns.Add(new DataColumn("id", stringType)); // 以 "id" 代替 "cli_analyze_title"
}
return this.simpleTable;
}
}
private result_data result_data;
public result_data Result_data
{
set { this.result_data = value; }
get { return this.result_data; }
}
public partial class result_data
{
private result_level[] result_levelField;
public result_level[] result_level
{
get { return this.result_levelField; }
set { this.result_levelField = value; }
}
private string nameField;
[System.Xml.Serialization.XmlAttributeAttribute("name")]
public string name
{
get { return this.nameField; }
set { this.nameField = value; }
}
}
public partial class result_level
{
private string nameField;
[System.Xml.Serialization.XmlAttributeAttribute()]
public string name
{
get { return this.nameField; }
set { this.nameField = value; }
}
private result_title[] result_titleField;
[System.Xml.Serialization.XmlElementAttribute("result_title", Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
public result_title[] result_title
{
get { return this.result_titleField; }
set { this.result_titleField = value; }
}
}
public partial class result_title
{
private string nameField;
public string name
{
get { return this.nameField; }
set { this.nameField = value; }
}
private result[] resultField;
public result[] result
{
get { return this.resultField; }
set { this.resultField = value; }
}
}
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
public partial class result
{
private title titleFiled;
[System.Xml.Serialization.XmlElementAttribute("title", Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
public title Title
{
get { return this.titleFiled; }
set { this.titleFiled = value; }
}
private detail detailFiled;
[System.Xml.Serialization.XmlElementAttribute("detail", Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
public detail Detail
{
get { return this.detailFiled; }
set { this.detailFiled = value; }
}
private reference referenceFiled;
[System.Xml.Serialization.XmlElementAttribute("reference", Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
public reference Reference
{
get { return this.referenceFiled; }
set { this.referenceFiled = value; }
}
public string mediA_hiscode;
public string mediB_hiscode;
public string result_type;
public string result_id;
}
public partial class title
{
private string nameField;
private string valueField;
|
|