asp:calendar将最后一个值绑定到数据库中 [英] asp:calendar binds last value to date from database

查看:87
本文介绍了asp:calendar将最后一个值绑定到数据库中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

I have to bind an <asp:calendar> with data fetched from a database using a linq query.

Here is the linq code







public List<AllCalander> SearchCalender(int month, int zip, string type, int cause)
{
        var xyz = (from m in DB.Calenders 
                   where(m.DateFrom.Value.Month==month || m.Zip==zip || m.ActivityType==type || m.CauseID==cause) 
                   group m by new { m.DateFrom } into grp
                   select new
                   {
                       caustitle = grp.Select(x => x.Caus.CauseTitle),
                       datfrm = grp.Key.DateFrom,
                       total = grp.Count()
                   })
          .ToList()
          .Select(m => new AllCalander
          {


              DateFrom =Convert.ToDateTime(m.datfrm),
              CauseTitle = string.Join(",", m.caustitle),
              Total = m.total
          });



我的aspx.cs代码在这里


My aspx.cs code is here

List<AllCalander> calnder = calbll.SearchCalender(mnth,ZipString,type,causeString);

foreach (var myItem in calnder)
{
    string datetime = myItem.DateFrom.ToString();

    Literal myEventNameLiteral = new Literal();
    myEventNameLiteral.ID = i + myItem.CauseID.ToString();

    // string currentcalanderDate = e.Day.Date.Day.ToString() ;
    if (string.Equals(DateTime.Parse(datetime).ToString("MMM dd yyyy"), e.Day.Date.ToString("MMM dd yyyy")))
    {
        string a = myItem.CauseTitle;

        if (a != cause)
            cause = a;

        coun++;

        myEventNameLiteral.Mode = LiteralMode.PassThrough;
        myEventNameLiteral.Text = "<br /><span style='font-family:verdana; font-size:10px;'>" + myItem.CauseTitle + "(" + myItem.Total + ")"+ " ";
        e.Cell.Controls.Add(myEventNameLiteral);
    }

    i++;
}





但在输出时它只显示数据库中的最后一个值(覆盖前一个)而不显示所有数据。



有人可以告诉我有什么问题吗?在此先感谢



but on output it only shows the last value from database(overwriting the previous one) instead of showing all the data.

Can somebody please tell me what's wrong? Thanks in advance

推荐答案

m组由新{m.DateFrom,m.Caus.CauseTitle}
group m by new { m.DateFrom, m.Caus.CauseTitle }


这篇关于asp:calendar将最后一个值绑定到数据库中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆