说不明白 看看吧

ling20101021 2010-10-28 09:08:36
无法将类型“MyAriticket.Model.CityInfo”隐式转换为“System.Collections.Generic.IList<MyAriticket.Model.CityInfo>”。存在一个显式转换(是否缺少强制转换?)

数据访问层
//根据ID查询地区信息
public static CityInfo GetByCityId(int id)
{
string sql = " select * from CityInfo where CityId = '" + id + "'";
SqlDataReader reader = DBHelper.GetReader(sql);
if (reader.Read())
{
CityInfo item = new CityInfo();
item.CityId = Convert.ToInt32(reader["CityId"]);
item.CityName = Convert.ToString(reader["CityName"]);
item.ProvinceId = Convert.ToString(reader["ProvinceId"]);
reader.Close();
return item;
}
else
{
reader.Close();
return null;
}
}

业务逻辑层
//根据ID查询地区信息
public static CityInfo GetByCityId(int id)
{
return CityInfoService.GetByCityId(id);
}

表示层
//查询
protected void BtnGet_Click(object sender, EventArgs e)
{
////出发地
int id = Convert.ToInt32(this.ddlFromCity.SelectedValue);
IList<CityInfo> item = CityInfoManager.GetByCityId(id);
}


那位帮我看看
...全文
167 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
ling20101021 2010-10-28
  • 打赏
  • 举报
回复
你们做项目 主外键用的多吗
hztltgg 2010-10-28
  • 打赏
  • 举报
回复
如果他提示
“System.Collections.Generic.IList<MyAriticket.Model.CityInfo>”隐式转换为“System.Collections.Generic.IList<CityInfo>”。存在一个显式转换(是否缺少强制转换?)
而不是类型没定义,
那么你这儿我还是怀疑定义了两个CityInfo了,用自动生成代码的工具或者linq to sql一类的东西么?
ling20101021 2010-10-28
  • 打赏
  • 举报
回复
第一遍好用 第二遍就不好用了
若-相惜 2010-10-28
  • 打赏
  • 举报
回复
IList<MyAriticket.Model.CityInfo> list = CityInfoManager.GetCityInfoById(id);

MyAriticket.Model.CityInfo num = CityInfoManager.GetByCityId(ids);

ling20101021 2010-10-28
  • 打赏
  • 举报
回复
没有 我就定义了一种CityInfo


他说"MyAriticket.Model.CityInfo"是IList<CityInfo>这里的


"CityInfo"是CityInfoManager.GetByCityId(ids); 的返回值类型


这是一个码农 2010-10-28
  • 打赏
  • 举报
回复
kevin87923 2010-10-28
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 hztltgg 的回复:]

MyAriticket.Model.CityInfo
CityInfo

这两个有什么区别?你定义了两种CityInfo?分别右键点这个类,查看定义看看这哪儿
[/Quote]
up
hztltgg 2010-10-28
  • 打赏
  • 举报
回复
MyAriticket.Model.CityInfo
CityInfo

这两个有什么区别?你定义了两种CityInfo?分别右键点这个类,查看定义看看这哪儿
ling20101021 2010-10-28
  • 打赏
  • 举报
回复
无法将类型“MyAriticket.Model.CityInfo”隐式转换为“CityInfo”


数据访问层
//根据ID查询地区信息
public static CityInfo GetByCityId(int id)
{
string sql = " select * from CityInfo where CityId = '" + id + "'";
SqlDataReader reader = DBHelper.GetReader(sql);
if (reader.Read())
{
CityInfo item = new CityInfo();
item.CityId = Convert.ToInt32(reader["CityId"]);
item.CityName = Convert.ToString(reader["CityName"]);
item.ProvinceId = Convert.ToString(reader["ProvinceId"]);
reader.Close();
return item;
}
else
{
reader.Close();
return null;
}
}

业务逻辑层
//根据ID查询地区信息
public static CityInfo GetByCityId(int id)
{
return CityInfoService.GetByCityId(id);
}

表示层
//查询
protected void BtnGet_Click(object sender, EventArgs e)
{
////出发地
int ids = Convert.ToInt32(this.ddlToCity.SelectedValue);
CityInfo num = CityInfoManager.GetByCityId(ids);
}


这个也不好用了

ling20101021 2010-10-28
  • 打赏
  • 举报
回复
不是 那个数据访问层发错了


“System.Collections.Generic.IList<MyAriticket.Model.CityInfo>”隐式转换为“System.Collections.Generic.IList<CityInfo>”。存在一个显式转换(是否缺少强制转换?)

数据访问层
//根据ProvinceId查询地区信息
public static IList<CityInfo> GetCityInfoById(int id)
{
IList<CityInfo> list = new List<CityInfo>();
string sql = " select * from CityInfo where ProvinceId = '" + id + "'";
DataTable table = DBHelper.GetDataSet(sql);
foreach (DataRow row in table.Rows)
{
CityInfo item = new CityInfo();
item.CityId = Convert.ToInt32(row["CityId"]);
item.CityName = Convert.ToString(row["CityName"]);
item.ProvinceId = Convert.ToString(row["ProvinceId"]);
list.Add(item);
}
return list;
}

业务逻辑层
//根据ID查询地区信息
public static IList<CityInfo> GetCityInfoById(int id)
{
return CityInfoService.GetCityInfoById(id);
}
表示层
//出发地
protected void ddlFromProvinceInfo_SelectedIndexChanged(object sender, EventArgs e)
{
int id = Convert.ToInt32(this.ddlFromProvinceInfo.SelectedValue);
IList<CityInfo> list = CityInfoManager.GetCityInfoById(id);
this.ddlFromCity.DataSource = list;
this.ddlFromCity.DataBind();
}
xuan.ye 2010-10-28
  • 打赏
  • 举报
回复
CityInfo item = (CityInfo)CityInfoManager.GetByCityId(id);
hztltgg 2010-10-28
  • 打赏
  • 举报
回复
IList<CityInfo> item = CityInfoManager.GetByCityId(id);

明明得到的是一个城市的信息,却放到一个城市集合里?
ling20101021 2010-10-28
  • 打赏
  • 举报
回复
怎么看别人的帖子啊
phil999 2010-10-28
  • 打赏
  • 举报
回复
IList<CityInfo> item = CityInfoManager.GetByCityId(id);

改成

CityInfo item = CityInfoManager.GetByCityId(id);

62,072

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧