积极答复者
从数据库查询多条数据

问题
-
数据库表是这样的:表A有个字段number,根据number查询表B(附件的相关信息)的信息,
我有一个表单页面,有一个附件,我用HyperLink做的。现在的问题是:我的方法只能返回一个实体类,如果有两个附件,我该怎么做?我的问题是这样的:我用hyperlink从数据库查到附件路径,但是我的方法只能查到一个实体类,只能查到一个路径,现在有两个附件,我该怎么办?
如图,这时另一个表,我根据runningno查询数据,但是我的方法只能查到一条数据,我该怎么没办
please verify my account
- 已编辑 lctk 2015年1月23日 13:00
答案
全部回复
-
你好,实体类不对应我的附件表,他是另一张表的实体类,但是这个表有一个字段RunningNo,根据RunningNo可以去附件表查询附件Url的信息,然后我在页面用Hyperlink去连接到url的地址。
但是我的方法是这样的:
public
TC_TaxiInfo GetModelBySql(Guid TaxiID)
{
StringBuilder sbSql =
new
StringBuilder();
sbSql.Append(
@"
SELECT
TaxiID,TaxiBrandNum,CMDS_Annex.
name
as
AttachName,url,TaxiCertificate,TC_Taxi.
Name
,CertificateTime,ManufactureDate,YearCarefulTime,CertificatePeriod,SeatingNumber,Attach,Picture,Remark,TC_Taxi.OrganiseUnitID,TC_Taxi.CreatedBy,TC_Taxi.CreatedDate,TC_Taxi.ModifiedBy,TC_Taxi.ModifiedDate
FROM
[TC_Taxi]
Left
join
CMDS_Annex
on
CMDS_Annex.RunningNo=TC_Taxi.Attach
WHERE
TaxiID=
'@TaxiId'
);
int
n = 0;
SqlParameter[] parameters = {
new
SqlParameter(
"@TaxiID"
, SqlDbType.UniqueIdentifier)};
parameters[n++].Value = TaxiID;
TC_TaxiInfo model =
null
;
//执行查询
using
(SqlDataReader rdr = SqlHelper.ExecuteReader(SqlHelper.LocalTrafficConnectionString, CommandType.Text, sbSql.ToString(), parameters))
{
model =
new
TC_TaxiInfo();
if
(rdr.Read())
{
model.TaxiID = (
new
Guid(rdr[TC_TaxiInfo.TAXIID_FIELD].ToString()));
model.TaxiBrandNum = rdr[TC_TaxiInfo.TAXIBRANDNUM_FIELD].ToString();
model.TaxiCertificate = rdr[TC_TaxiInfo.TAXICERTIFICATE_FIELD].ToString();
model.Name = rdr[TC_TaxiInfo.NAME_FIELD].ToString();
}
}
return
model;
}
请问我这段代码怎么改?我从A表查出所有信息,其中有字段RunningNo,然后我根据RunningNo查询Attachmentde的信息,但是我的方法只能返回一个实体类,就是除了附件的字段为两个,sql语句应该怎么改,实体类怎么改?
或者对于附件的查询能不能用linq,用linq怎么写?
please verify my account