asp.net mvc3 Datetime to shortdate

时间:2013-03-25 14:23:30

标签: asp.net asp.net-mvc-3 datetime-format

我是asp.net和mvc3的新手。我正在使用sql server和实体框架,并希望在Details视图中显示日期。

sql中的数据类型为DateTime

现在得到的是:21.03.2013 00:00:00 我想要的是:21.03.2013

现在我正在使用:

@Html.DisplayFor(Model => Model.PlanBegPlan.Date)

请帮助......

我的控制器

  public ViewResult DetailsTestRelease(int id)
    {
        ViewData["EditTestReleaseId"] = id;

        TRel testrelease = db.TRel.Single(t => t.Id == id);
        Basedata bv = db.BasedataSet.Single(b => b.Id == id);
        ViewData["pid"] = testrelease.ProjectId;
        //ViewData["bid"] = testrelease.Base.Id;

        var tuple = new Tuple<KPI_Container.TRel, KPI_Container.Basedata>(testrelease, bv);

        return View(tuple);
    }

我的观点:

    @model Tuple<KPI_Container.TRel, KPI_Container.Basedata>


    @{
        ViewBag.Title = "Details";
    }

    <h2>Soll-Werte</h2>
    <br />
     <div>
        @Html.ActionLink("Soll-Werte Testrelease Bearbeiten", "EditTestRelease", new { id = ViewData["EditTestReleaseId"] }, new { Class = "action add", title = "Hier können die Testreleasedaten gepflegt werden." }) 

        @Html.ActionLink("Soll-Planung der Basiswerte", "EditBaseValues", new { id = ViewData["EditTestReleaseId"] }, new { Class = "action add", title = "Zum Ansehen und Bearbeiten der Basiswerte." }) |
        @Html.ActionLink("KPI-Werte anzeigen", "ShowKPIs", new { id = ViewData["EditTestReleaseId"] }, new { Class = "action add", title = "Zum Ansehen der KPI-Werte." })
     </div>



    <script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
    <script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
    <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.0/themes/base/jquery-ui.css">
    <script src="http://code.jquery.com/jquery-1.9.0.js" type="text/javascript"></script>
    <script src="http://code.jquery.com/ui/1.10.0/jquery-ui.js" type="text/javascript"></script>


    <script>
        $(function () {
            $("#tabs").tabs();
        });
    </script>


    @using (Html.BeginForm())
    {
    @Html.ValidationSummary(true)

    <div id="tabs">
        <ul>
            <li><a href="#tabs-1"><span>Planung Testrelease</span></a></li>
            <li><a href="#tabs-2"><span>Management & Koordination</span></a></li>
            <li><a href="#tabs-3"><span>Zusatzservices / Aktivitäten</span></a></li>
            <li><a href="#tabs-4"><span>PPU Services</span></a></li>
            <li><a href="#tabs-5"><span>Einflussparameter / Steuergrößen</span></a></li>
        </ul>
        <div id="tabs-1">
        <table id="tabletry">
        <tr>
        <th>Testrelease</th>
        <th></th>
        </tr>
        <tr>
        <td title="Name des Testrelease">Name</td>
        <td style="background-color: White">@Html.DisplayFor(Model => Model.Item1.Name)</td>
        </tr>

        <tr>
        <td title="Name des Projektes">@Html.LabelFor(model => model.Item1.ProjectId, "Projekt")</td>
        <td style="background-color: White">@Html.DisplayFor(Model => Model.Item1.Project.Name)</td>
        </tr>


        </table>
        <br />

    <table id="tabletry">
    <tr>
    <th>Soll-Werte</th>
    <th></th>
    <th></th>
    <th></th>
    <th></th>
    </tr>
    <tr>
    <td>Plan( Control)</td>
    <td title="Planned Begin Planning - Geplanter Beginn der Testplanung aus der Baseline">PlanBegPlan</td>
    <td style="background-color: White">@Html.DisplayFor(Model => Model.Item1.PlanBegPlan)</td>
    <td title="Planned End Planning - Geplantes Ende der Testplanung aus der Baseline">PlanEndPLan</td>
    <td style="background-color: White">@Html.DisplayFor(Model => Model.Item1.PlanEndPlan.Date)</td>
    </tr>
    <tr>
    <td>Prep</td>
    <td title="Planned Begin Preparation- Geplanter Beginn der Testvorbereitung aus der Baseline">PlanBegPrep</td>
    <td style="background-color: White">@Html.DisplayFor(Model => Model.Item1.PlanBegPrep.Date)</td>
    <td title="Planned End Preparation - Geplantes Ende der Testvorbereitung aus der Baseline">PlanEndPrep</td>
    <td style="background-color: White">@Html.DisplayFor(Model => Model.Item1.PlanEndPrep.Date)</td>
    </tr>
    <tr>
    <td>Exec</td>
    <td title="Planned Begin Execution- Geplanter Beginn der Testdurchführung aus der Baseline">PlanBegExec</td>
    <td style="background-color: White">@Html.DisplayFor(Model => Model.Item1.PlanBegExe.Date)</td>
    <td title="Planned End Execution- Geplantes Ende der Testdurchführung aus der Baseline">PlanEndExec</td>
    <td style="background-color: White">@Html.DisplayFor(Model => Model.Item1.PlanEndExe.Date)</td>
    </tr>
    <tr>
    <td>Total</td>
    <td title="Planned Begin Total- Geplanter Beginn des Gesamtprojektes aus der Baseline">PlanBegTot</td>
    <td style="background-color: White">@Html.DisplayFor(Model => Model.Item1.PlanBegTot.Value.Date)</td>
    <td title="Planned End Total- Geplantes Ende des Gesamtprojektes aus der Baseline">PlanEndTot</td>
    <td style="background-color: White">@Html.DisplayFor(Model => Model.Item1.PlanEndTot.Value.Date)</td>
    </tr>

    </table>
   </div>
   <div id="tabs-2">
        <table id="tabletry">
                    <tr>
                    <th>Soll-Werte</th>
                    <th></th>
                    </tr>
                    <tr>
                        <td title="xx">Projektmanagement</td>
                        <td style="background-color: white">@Html.DisplayFor(Model => Model.Item2.PM_plan)</td>
                    </tr>
                    <tr>
                        <td title="xx">Qualitätsmanagement</td>
                        <td style="background-color: white">@Html.DisplayFor(Model => Model.Item2.QM_plan)</td>
                    </tr>
                    <tr>
                        <td title="xx">Projektmanagement Office</td>
                        <td style="background-color: white">@Html.DisplayFor(Model => Model.Item2.PMO_plan)</td>
                    </tr>
                    <tr>
                        <td title="xx">Teamkoordination</td>
                        <td style="background-color: white">@Html.DisplayFor(Model => Model.Item2.Tcoord_plan)</td>
                    </tr>
                </table>
                </div>

                <div id="tabs-3">
                <table id="tabletry">
                    <tr>
                        <th>Soll-Werte</th>
                        <th></th>
                    </tr>
                    <tr>
                        <td title="xx">Defektmanagement</td>
                        <td style="background-color: white">@Html.DisplayFor(Model => Model.Item2.Defmgmt_plan)</td>
                    </tr>
                    <tr>
                        <td title="xx">Umgebungsmanagement</td>
                        <td style="background-color: white">@Html.DisplayFor(Model => Model.Item2.Envmgmt_plan)</td>
                    </tr>
                    <tr>
                        <td title="xx">Testdatenmanagement</td>
                        <td style="background-color: white">@Html.DisplayFor(Model => Model.Item2.Testdmgmt_plan)</td>
                    </tr>
                    <tr>
                        <td title="xx">Testvorbereitung</td>
                        <td style="background-color: white">@Html.DisplayFor(Model => Model.Item2.Testprep_plan)</td>
                    </tr>
                    <tr>
                        <td title="xx">Knowledgetransfer/Transition</td>
                        <td style="background-color: white">@Html.DisplayFor(Model => Model.Item2.KTTrans_plan)</td>
                    </tr>
                    <tr>
                        <td title="xx">Consulting</td>
                        <td style="background-color: white">@Html.DisplayFor(Model => Model.Item2.Consulting_plan)</td>
                    </tr>
                    <tr>
                        <td title="xx">Tools-Setup</td>
                        <td style="background-color: white">@Html.DisplayFor(Model => Model.Item2.Toolset_plan)</td>
                    </tr>
                </table>
                </div>

                <div id="tabs-4">
                <h2>Funktionaler Test</h2>
                 <table id="tabletry">
                <tr>
                        <th title="xx">Neue<br />Funktionalität</th>
                        <th title="xx">Anzahl geplant<br />hoch</th>
                        <th title="xx">Anzahl geplant<br />mittel</th>
                        <th title="xx">Anzahl geplant<br />gering</th>
                </tr>
                <tr>
                        <td>Specification</td>
                        <td style="border-right-style: dotted; background-color: white">@Html.DisplayFor(Model => Model.Item2.FUN_Tspec_nf_l_plan)</td>
                        <td style="border-right-style: dotted; background-color: white">@Html.DisplayFor(Model => Model.Item2.FUN_Tspec_nf_m_plan)</td>
                        <td style="background-color: white">@Html.DisplayFor(Model => Model.Item2.FUN_Tspec_nf_s_plan)</td>
                </tr>
                <tr>
                        <td>Execution</td>
                        <td style="border-right-style: dotted; background-color: white">@Html.DisplayFor(Model => Model.Item2.FUN_TEXe_nf_l_plan)</td>
                        <td style="border-right-style: dotted; background-color: white">@Html.DisplayFor(Model => Model.Item2.FUN_TExe_nf_m_plan)</td>
                        <td style="background-color: white">@Html.DisplayFor(Model => Model.Item2.FUN_TExe_nf_s_plan)</td>
                </tr>
                <tr>
                        <th>Regression</th>
                        <td style="border-right-style: dotted;background-color:silver"></td>
                        <td style="border-right-style: dotted;background-color:silver"></td>
                        <td style="background-color:silver"></td>
                </tr>
                <tr>
                        <td>Specification</td>
                        <td style="border-right-style: dotted; background-color: white" >@Html.DisplayFor(Model => Model.Item2.FUN_Tspec_reg_l_plan)</td>
                        <td style="border-right-style: dotted; background-color: white">@Html.DisplayFor(Model => Model.Item2.FUN_Tspec_reg_m_plan)</td>
                        <td style="background-color: white">@Html.DisplayFor(Model => Model.Item2.FUN_Tspec_reg_s_plan)</td>
                </tr>
                <tr>
                        <td>Execution</td>
                        <td style="border-right-style: dotted; background-color: white">@Html.DisplayFor(Model => Model.Item2.FUN_TExe_reg_l_plan)</td>
                        <td style="border-right-style: dotted; background-color: white">@Html.DisplayFor(Model => Model.Item2.FUN_TExe_reg_m_plan)</td>
                        <td style=" background-color: white">@Html.DisplayFor(Model => Model.Item2.FUN_TExe_reg_s_plan)</td>
                </tr>
                </table>

                    <br />
                    <br />
                <h2> Testautomatisierung</h2>
                <table id="tabletry">
                <tr>
                        <th title="xx">Neue<br />Funktionalität</th>
                        <th title="xx">Anzahl geplant<br />hoch</th>
                        <th title="xx">Anzahl geplant<br />mittel</th>
                        <th title="xx">Anzahl geplant<br />gering</th>
                </tr>
                <tr>
                        <td>Specification</td>
                        <td style="border-right-style: dotted; background-color: white">@Html.DisplayFor(Model => Model.Item2.TAU_Tspec_nf_l_plan)</td>
                        <td style="border-right-style: dotted; background-color: white">@Html.DisplayFor(Model => Model.Item2.TAU_Tspec_nf_m_plan)</td>
                        <td style="background-color: white">@Html.DisplayFor(Model => Model.Item2.TAU_Tspec_nf_s_plan)</td>
                </tr>
                <tr>
                        <td>Execution</td>
                        <td style="border-right-style: dotted; background-color: white">@Html.DisplayFor(Model => Model.Item2.TAU_TEXe_nf_l_plan)</td>
                        <td style="border-right-style: dotted; background-color: white">@Html.DisplayFor(Model => Model.Item2.TAU_TExe_nf_m_plan)</td>
                        <td style="background-color: white">@Html.DisplayFor(Model => Model.Item2.TAU_TExe_nf_s_plan)</td>
                </tr>
                <tr>
                        <th>Regression</th>
                        <td style="border-right-style: dotted;background-color:silver"></td>
                        <td style="border-right-style: dotted;background-color:silver"></td>
                        <td style="background-color:silver"></td>
                </tr>
                <tr>
                        <td>Specification</td>
                        <td style="border-right-style: dotted; background-color: white" >@Html.DisplayFor(Model => Model.Item2.TAU_Tspec_reg_l_plan)</td>
                        <td style="border-right-style: dotted; background-color: white">@Html.DisplayFor(Model => Model.Item2.TAU_Tspec_reg_m_plan)</td>
                        <td style="background-color: white">@Html.DisplayFor(Model => Model.Item2.TAU_Tspec_reg_s_plan)</td>
                </tr>
                <tr>
                        <td>Execution</td>
                        <td style="border-right-style: dotted; background-color: white">@Html.DisplayFor(Model => Model.Item2.TAU_TExe_reg_l_plan)</td>
                        <td style="border-right-style: dotted; background-color: white">@Html.DisplayFor(Model => Model.Item2.TAU_TExe_reg_m_plan)</td>
                        <td style=" background-color: white">@Html.DisplayFor(Model => Model.Item2.TAU_TExe_reg_s_plan)</td>
                </tr>
                </table>
                    <br />
                    <br />
                <h2>Last&Performance Test</h2>
                <table id="tabletry">
                <tr>
                        <th title="xx">Neue<br />Funktionalität</th>
                        <th title="xx">Anzahl geplant<br />hoch</th>
                        <th title="xx">Anzahl geplant<br />mittel</th>
                        <th title="xx">Anzahl geplant<br />gering</th>
                </tr>
                <tr>
                        <td>Specification</td>
                        <td style="border-right-style: dotted; background-color: white">@Html.DisplayFor(Model => Model.Item2.LPT_Tspec_nf_l_plan)</td>
                        <td style="border-right-style: dotted; background-color: white">@Html.DisplayFor(Model => Model.Item2.LPT_Tspec_nf_m_plan)</td>
                        <td style="background-color: white">@Html.DisplayFor(Model => Model.Item2.LPT_Tspec_nf_s_plan)</td>
                </tr>
                <tr>
                        <td>Execution</td>
                        <td style="border-right-style: dotted; background-color: white">@Html.DisplayFor(Model => Model.Item2.LPT_TEXe_nf_l_plan)</td>
                        <td style="border-right-style: dotted; background-color: white">@Html.DisplayFor(Model => Model.Item2.LPT_TExe_nf_m_plan)</td>
                        <td style="background-color: white">@Html.DisplayFor(Model => Model.Item2.LPT_TExe_nf_s_plan)</td>
                </tr>
                <tr>
                        <th>Regression</th>
                        <td style="border-right-style: dotted;background-color:silver"></td>
                        <td style="border-right-style: dotted;background-color:silver"></td>
                        <td style="background-color:silver"></td>
                </tr>
                <tr>
                        <td>Specification</td>
                        <td style="border-right-style: dotted; background-color: white" >@Html.DisplayFor(Model => Model.Item2.LPT_Tspec_reg_l_plan)</td>
                        <td style="border-right-style: dotted; background-color: white">@Html.DisplayFor(Model => Model.Item2.LPT_Tspec_reg_m_plan)</td>
                        <td style="background-color: white">@Html.DisplayFor(Model => Model.Item2.FUN_Tspec_reg_s_plan)</td>
                </tr>
                <tr>
                        <td>Execution</td>
                        <td style="border-right-style: dotted; background-color: white">@Html.DisplayFor(Model => Model.Item2.LPT_TExe_reg_l_plan)</td>
                        <td style="border-right-style: dotted; background-color: white">@Html.DisplayFor(Model => Model.Item2.LPT_TExe_reg_m_plan)</td>
                        <td style=" background-color: white">@Html.DisplayFor(Model => Model.Item2.LPT_TExe_reg_s_plan)</td>
                </tr>
                </table>

                    <br />
                    <br />
                    <h2>Security Test</h2>
                <table id="tabletry">
                <tr>
                        <th title="xx">Neue<br />Funktionalität</th>
                        <th title="xx">Anzahl geplant<br />hoch</th>
                        <th title="xx">Anzahl geplant<br />mittel</th>
                        <th title="xx">Anzahl geplant<br />gering</th>
                     @*   <th title="xx">Aufwand geplant</th>*@
                </tr>
                <tr>
                        <td>Specification</td>
                        <td style="border-right-style: dotted; background-color: white">@Html.DisplayFor(Model => Model.Item2.SEC_Tspec_nf_l_plan)</td>
                        <td style="border-right-style: dotted; background-color: white">@Html.DisplayFor(Model => Model.Item2.SEC_Tspec_nf_m_plan)</td>
                        <td style="border-right-style: groove;background-color: white">@Html.DisplayFor(Model => Model.Item2.SEC_Tspec_nf_s_plan)</td>
                        @* <td style="background-color: white">@Html.DisplayFor(Model => Model.Item2.SEC_Tspec_Eff_plan)</td>*@
                </tr>
                <tr>
                        <td>Execution</td>
                        <td style="border-right-style: dotted; background-color: white">@Html.DisplayFor(Model => Model.Item2.SEC_TEXe_nf_l_plan)</td>
                        <td style="border-right-style: dotted; background-color: white">@Html.DisplayFor(Model => Model.Item2.SEC_TExe_nf_m_plan)</td>
                        <td style="border-right-style: groove;background-color: white">@Html.DisplayFor(Model => Model.Item2.SEC_TExe_nf_s_plan)</td>
                    @*    <td style="background-color: white">@Html.DisplayFor(Model => Model.Item2.SEC_TExe_Eff_plan)</td>*@
                </tr>
                <tr>
                        <th>Regression</th>
                        <td style="border-right-style: dotted;background-color:silver"></td>
                        <td style="border-right-style: dotted;background-color:silver"></td>
                        <td style="border-right-style: groove;background-color:silver"></td>
                    @*    <td style="border-right-style: groove;background-color:silver"></td>*@
                </tr>
                <tr>
                        <td>Specification</td>
                        <td style="border-right-style: dotted; background-color: white" >@Html.DisplayFor(Model => Model.Item2.SEC_Tspec_reg_l_plan)</td>
                        <td style="border-right-style: dotted; background-color: white">@Html.DisplayFor(Model => Model.Item2.SEC_Tspec_reg_m_plan)</td>
                        <td style="border-right-style: groove;background-color: white">@Html.DisplayFor(Model => Model.Item2.SEC_Tspec_reg_s_plan)</td>
                   @*     <td style="border-right-style: groove;background-color: white">@Html.DisplayFor(Model => Model.Item2.SEC_Tspec_Eff_plan)</td>*@
                </tr>
                <tr>
                        <td>Execution</td>
                        <td style="border-right-style: dotted; background-color: white">@Html.DisplayFor(Model => Model.Item2.SEC_TExe_reg_l_plan)</td>
                        <td style="border-right-style: dotted; background-color: white">@Html.DisplayFor(Model => Model.Item2.SEC_TExe_reg_m_plan)</td>
                        <td style=" background-color: white; border-right-style: groove">@Html.DisplayFor(Model => Model.Item2.SEC_TExe_reg_s_plan)</td>
                </tr>
                </table>
                </div>


    </div>


  }  

<div>
     @Html.ActionLink("Zurück", "Details", new { id = ViewData["pid"] })
</div>

我使用实体框架构建我的模型 我有一张桌子'TRel'和一张桌子'Basedata'

3 个答案:

答案 0 :(得分:2)

<强>更新

根据您的上一次评论,我做了一些检查,发现了以下内容。

  1. 要以您的文化的默认短格式显示日期,您可以使用:

    Model.PlanBegPlan.Date.ToShortDateString()
    

    或者您可以使用以下内容,因此格式不依赖于区域设置:

    Model.PlanBegPlan.Date.ToString("dd.MM.yyyy")
    

    这也可以包含在@Html.Display中,如下所示,但不是@Html.DisplayFor,因为后者需要lambda返回字段或属性以及上述两个返回字符串值。

    @Html.Display(Model.PlanBegPlan.Date.ToString("dd.MM.yyyy"))
    
  2. 另一个选项是使用Date属性上的DisplayFormat属性在模型上指定日期格式。

    [DisplayFormat(DataFormatString = "{0:dd.MM.yyyy}", ApplyFormatInEditMode = true)]
    public DateTime Date { get; set; }
    

    然后在视图中你可以放下:

    @Html.DisplayFor(m => m.PlanBegPlan.Date)
    

    此选项允许您使用DisplayFor

答案 1 :(得分:1)

对您拥有的日期时间对象使用ToShortDateString方法。

@Html.DisplayFor(Model => Model.PlanBegPlan.Date.ToShortDateString())

ToShortDateString方法返回的字符串对文化很敏感。它反映了当前文化的DateTimeFormatInfo对象定义的模式。例如,对于en-US文化,标准的短日期模式是“M/d/yyyy”;对于de-DE文化,它是“dd.MM.yyyy”;对于ja-JP文化,它是“yyyy/M/d”。

答案 2 :(得分:1)

尝试以下方法:

@Html.DisplayFor(Model => Model.PlanBegPlan.Date.ToString("MM/dd/yyyy"))

More reference