LINQ ILIST 接口的问题,重复数据。
本帖最后由 yangchunmarch 于 2013-03-26 09:48:31 编辑
IList<wnewslist> list2 = new List<wnewslist>(); //定义ilist
wnewslist wineNews = new wnewslist(); //这个是自己定义,有id,title
var db = news.db;
int channel1 = 1500;
string strr = "";
var db1 = db.Where(p => p.ChannelID == channel1).Skip(5).Take(5); // 查询数据库。
foreach (var p in db1)
{
wineNews.Title = "";
wineNews.ID = p.ID.ToString();
wineNews.Title = p.Title.ToString();
strr = p.Title;
list2.Add(wineNews);
Response.Write(wineNews.Title); //输出标题
Response.Write("<br/>");
}
string con1 = JsonConvert.SerializeObject(list2); //序列化,
Response.Write(con1); //输出最后的数据。
数据结果
啤酒麦香的中医道
你知道吗?啤酒“上头”有内因
好麦香从哪里来?
啤酒肚“冤案”
为何啤酒瓶总偏爱绿色?
[{"ID":"244645","Title":"为何啤酒瓶总偏爱绿色?"},{"ID":"244645","Title":"为何啤酒瓶总偏爱绿色?"},{"ID":"244645","Title":"为何啤酒瓶总偏爱绿色?"},{"ID":"244645","Title":"为何啤酒瓶总偏爱绿色?"},{"ID":"244645","Title":"为何啤酒瓶总偏爱绿色?"}]
为啥输出的最后的数据是重复的,而不像上边的那样,是不是ilist这个设置的不对。
linq,ilist
------解决方案--------------------wnewslist wineNews = new wnewslist(); //这个是自己定义,有id,title
上面这句放在循环里,每次都要新实例化
IList<wnewslist> list2 = new List<wnewslist>(); //定义ilist
var db = news.db;
int channel1 = 1500;
string strr = "";
var db1 = db.Where(p => p.ChannelID == channel1).Skip(5).Take(5); // 查询数据库。
foreach (var p in db1)
{
wnewslist wineNews = new wnewslist(); //这个是自己定义,有id,title