后台代码如下:
public Dictionary<string, Model.Produce> getProduceInfoByPI(string PI, string Model)
{
//SQL命令
string sqltxt = string.Format("SELECT [ProduceID]"+
",[PI]"+
" ,[Line]"+
" ,[Model]"+
" ,[Station]"+
" ,[Status]"+
" ,[BarCode]"+
" ,[Operator]"+
" ,[DateTime]"+ " FROM [dbo].[Produce] Where 1=1 ");
if (PI != "")
{
sqltxt += " AND PI = '" + PI + "' ";
}
if (Model != "")
{
sqltxt += " AND Model = '" + Model + "' ";
}
sqltxt += " Order By DateTime DESC ";
//创建生产实体
//CMCSharpSDK.Model.Produce tmpProduce = new CMCSharpSDK.Model.Produce();
//创建生产实体集合
Dictionary<string, Model.Produce> ProduceCollection = new Dictionary<string, Model.Produce>(); // 从配置文件读取连接字符串
string connectionString = ConfigurationManager.ConnectionStrings["SQLSERVER"].ConnectionString; // 执行 SQL 命令
using (SqlConnection conn = new SqlConnection(connectionString))
{
SqlCommand cmd = new SqlCommand(sqltxt, conn);
conn.Open(); using (SqlDataReader myReader = cmd.ExecuteReader(
CommandBehavior.CloseConnection |
CommandBehavior.SingleResult |
CommandBehavior.SingleRow))
{
while (myReader.Read())
{
//将数据集转换成实体集合
Model.Produce tmpProduce = new Model.Produce();
tmpProduce.ProduceID = Convert.ToString(myReader["ProduceID"]).Trim();
tmpProduce.PI = Convert.ToString(myReader["PI"].ToString().Trim());
tmpProduce.Model = Convert.ToString(myReader["Model"]).Trim();
tmpProduce.Line = Convert.ToString(myReader["Line"]).Trim();
tmpProduce.Station = Convert.ToString(myReader["Station"]).Trim();
tmpProduce.Status = Convert.ToString(myReader["Status"]).Trim();
tmpProduce.BarCode = Convert.ToString(myReader["BarCode"]).Trim();
tmpProduce.DateTime = Convert.ToDateTime(myReader["DateTime"]);
tmpProduce.Operator = Convert.ToString(myReader["Operator"]).Trim();
ProduceCollection.Add(tmpProduce.ProduceID, tmpProduce);
} }
} return ProduceCollection;
}sql 贴出来时,是可以查到多条记录的。
",[PI]"+
" ,[Line]"+
" ,[Model]"+
" ,[Station]"+
" ,[Status]"+
" ,[BarCode]"+
" ,[Operator]"+
" ,[DateTime]"+ " FROM [dbo].[Produce] Where 1=1 ");sqltxt += " Order By DateTime DESC ";
using (SqlDataReader myReader = cmd.ExecuteReader(
CommandBehavior.CloseConnection |
CommandBehavior.SingleResult |
CommandBehavior.SingleRow))
将上面的改为,using (SqlDataReader myReader = cmd.ExecuteReader()) 不带参的就行了不会只有一行结果了。
之前的代码也是复制别人的,谢谢个位