如何获得我刚才提到的输出? [英] How can I get the output I just mentioned below?

查看:64
本文介绍了如何获得我刚才提到的输出?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这个for循环在每个单独的活动前打印一个月。

例如: - 1月

活动1。

1月

Event2

January

Event3

March

Event4

March

Event5



我希望输出一个月打印当月发生的所有事件。

例如: - 1月

活动1

活动2

活动3



三月

活动1

活动2



我的尝试:



@foreach(模型中的var项目)

{

@ item.EventDate.ToString(MMMMMMMMMMMMMMMMM)





@ Html.ActionLink(item.EventDate.ToShortDateString(),TrackAttendance,new {id = item.ScheduledEventId})

}

This for loop prints month before every individual event.
Eg:- January
Event1.
January
Event2
January
Event3
March
Event4
March
Event5

I want output like a month prints all events happening in that month.
Eg:- January
Event1
Event2
Event3

March
Event1
Event2

What I have tried:

@foreach (var item in Model)
{

@item.EventDate.ToString("MMMMMMMMMMMMMMMMM")



@Html.ActionLink(item.EventDate.ToShortDateString(), "TrackAttendance", new { id = item.ScheduledEventId })
}

推荐答案

class ModelItem
{
    public DateTime EventDate;
    public int ScheduledEventId;

    public ModelItem(DateTime date, int id)
    {
        EventDate = date;
        ScheduledEventId = id;
    }
}

public string GetEventStr()
{
    List<ModelItem> Model = new List<ModelItem>();
    Model.Add(new ModelItem(new DateTime(2016, 1, 1), 1));
    Model.Add(new ModelItem(new DateTime(2016, 1, 2), 2));
    Model.Add(new ModelItem(new DateTime(2016, 1, 3), 3));
    Model.Add(new ModelItem(new DateTime(2016, 3, 1), 1));
    Model.Add(new ModelItem(new DateTime(2016, 3, 2), 2));

    StringBuilder sb = new StringBuilder();

    int currentMonth = 0;
    bool isFirst = true;
    foreach (var item in Model)
    {
        if (item.EventDate.Month != currentMonth)
        {
            if (isFirst)
                isFirst = false;
            else
                sb.AppendLine("<br />");

            sb.AppendLine(item.EventDate.ToString("MMMM") + "<br />");

            currentMonth = item.EventDate.Month;
        }

        sb.AppendLine("Event" + item.ScheduledEventId + "<br />");
    }

    return sb.ToString();
}


这篇关于如何获得我刚才提到的输出?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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