Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何仅将类设置为当前对象_C#_Asp.net_Asp.net Mvc_Asp.net Mvc 4 - Fatal编程技术网

C# 如何仅将类设置为当前对象

C# 如何仅将类设置为当前对象,c#,asp.net,asp.net-mvc,asp.net-mvc-4,C#,Asp.net,Asp.net Mvc,Asp.net Mvc 4,我有一个预订系统,其中预订日期由DateFrom-DateTo属性范围设置。现在,我想将.alert类分配给那些即将过期(过期1天)的预订 问题是,如果预订即将过期,不仅此预订设置了.alert类,而且还设置了所有其他预订,因此所有都是红色的,即使只有一个预订应该过期。如何仅将其绑定到当前预订 条件 foreach(Reservation r in res) { bool varovani; if (r.DateTo.AddDa

我有一个预订系统,其中预订日期由
DateFrom
-
DateTo
属性范围设置。现在,我想将
.alert
类分配给那些即将过期(过期1天)的预订

问题是,如果预订即将过期,不仅此预订设置了
.alert
类,而且还设置了所有其他预订,因此所有
都是红色的,即使只有一个预订应该过期。如何仅将其绑定到当前预订

条件

  foreach(Reservation r in res)
        {
            bool varovani;
            if (r.DateTo.AddDays(-1).Day <= DateTime.Now.Day)
            {
                varovani = true;

            }
            else
            {
                varovani = false;
            }
            ViewBag.Varovani = varovani;
        }
foreach(以res表示的预订r)
{
布尔·瓦洛瓦尼;

if(r.DateTo.AddDays(-1).Day发生这种情况的原因是
ViewBag.Varovani
是一个bool值。因此,每次迭代时,您都会覆盖“Varovani”
bool
值。您要做的是向您的
Reservation
类添加一个属性:

public class Reservation
{ 
    //Rest of class

    public bool Varovani => DateTo.AddDays(-1).Day <= DateTime.Now.Day;
}
@foreach (Reservation r in Model)
{
    string alertClass = "";
    if (r.DateTo.AddDays(-1).Day <= DateTime.Now.Day)
    {
        alertClass = "danger";
    }
    else
    {
        alertClass = "";
    }

    //Rest of your original Razor
免责声明
我不知道什么叫“瓦洛瓦尼”意思是,因此只有当它正确描述了您的逻辑时,才使用它作为您的属性名。

您是基于ViewBag项的值设置类,这意味着它最终会发生在所有事情上。您需要仅基于一个保留设置它。我会将一个属性添加到
保留
viewmodel中,然后在那里检测它。Perfecvarovaní在英语中的意思是警告,很抱歉。
<tbody>
@foreach (Reservation r in Model)
{
    <tr class="@(r.Varovani ? "danger" : "")">
        <td>@r.Reserved.Id</td>
        <td>@r.Name</td>
        <td>@r.DateFrom</td>
        <td>@r.DateTo</td>
        <td>
               @Ajax.ActionLink("Detail", "Detail", "Skies", new { id = r.Reserved.Id }, new AjaxOptions() { InsertionMode = InsertionMode.Replace, UpdateTargetId = "modalContent", OnBegin = "openModalWindow" })
        </td>
        <td>
            @Html.ActionLink("Edit", "Edit", "Reservation", new { id = r.Id }, null)
            @Html.ActionLink("Delete", "Delete", "Reservation", new { id = r.Id }, new { onclick = "return confirm('Přejete si opravdu smazat tuto výpujčku? " + r.Name + "');" })
        </td>
    </tr>
}
</tbody>
@foreach (Reservation r in Model)
{
    string alertClass = "";
    if (r.DateTo.AddDays(-1).Day <= DateTime.Now.Day)
    {
        alertClass = "danger";
    }
    else
    {
        alertClass = "";
    }

    //Rest of your original Razor