2017-12-04 30 views
-2

私はジムでどれくらいの体重を持ち上げたかを追跡するのに役立つ簡単なWebアプリケーションを作っています。私は何も入力せずに自分のワークアウトの日付を自動的に選ぶフィールドを追加しようとしています。例えば今日の日付に自動的に入力してください

昨日私はそれとして示されたい私の肩の上に働いていた場合:

日:2017年12月3日

しかし私は、この絶えず私の見解でDateTime.Now.ToLongDateStringを()を追加しようとしました

public class Shoulders 
{ 
    public int Id { get; set; } 

    [Display(Name ="Military Press")] 
    public double MilitaryPress { get; set; } 

    [Display(Name = "Sides Launch")] 
    public double SidesLaunch { get; set; } 

    [Display(Name = "Front Launch")] 
    public double FrontLaunch { get; set; } 
} 
:現在の日に日付を更新し、したがって、明日はここで12月5日2017年

にされたと昨日の肩のトレーニングは私のモデルで表示されるでしょう

そして、ここで私のビューです:

<table class="table table-bordered table-hover"> 
<thead> 
    <tr> 
     <th>Date</th> 
     <th>Military Press</th> 
     <th>Sides Launch</th> 
     <th>Front Launch</th> 
    </tr> 
</thead> 
<tbody> 
    @foreach (var workout in Model) 
     { 
     <tr> 
      <td>@DateTime.Now.ToLongDateString()</td> 
      <td>@workout.MilitaryPress</td> 
      <td>@workout.SidesLaunch</td> 
      <td>@workout.FrontLaunch</td> 
     </tr> 
    } 
</tbody> 

+2

あなたのモデルは、日付が含まれていません。 – john

+2

本当に必要なものを明確にする必要があります。あなたが持っているものはあなたのタイトルが示唆するものなので、今日の日付が追加されます。 dBでエントリを作成した日付が必要な場合(ワークアウトを行った日を前提とします)、クラスにDateTimeプロパティが必要です。 – dinotom

+0

日付を保存する必要があります。または、 'DateTime.Now'を使用しているため、当日​​の日付を引き継ぎます。 – active92

答えて

2

あなたのクラス

public class Shoulders 
{ 
    public int Id { get; set; } 

    [Display(Name ="Military Press")] 
    public double MilitaryPress { get; set; } 

    [Display(Name = "Sides Launch")] 
    public double SidesLaunch { get; set; } 

    [Display(Name = "Front Launch")] 
    public double FrontLaunch { get; set; }  
} 

はあなたのエントリを挿入するときそして、あなたが日付を設定することができます

public class Shoulders 
{ 
    public int Id { get; set; } 

    // you can change set; to private set; if you add the constructor 
    public DateTime WorkoutDate { get; set; } 

    [Display(Name ="Military Press")] 
    public double MilitaryPress { get; set; } 

    [Display(Name = "Sides Launch")] 
    public double SidesLaunch { get; set; } 

    [Display(Name = "Front Launch")] 
    public double FrontLaunch { get; set; } 

    // if you want it set automatically add this constructor 
    public Shoulders() 
    { 
     WorkoutDate = DateTime.Now(); 
    } 
} 

に変更する必要がありますデータベースへ

var shoulders = new Shoulders 
{ 
    WorkoutDate = DateTime.Now(); 
    //other properties set here and if you added the constructor in the 
    // class you don't need to set the date here 
}; 

これをdbに挿入します。

context.Shoulders.Add(shoulder); 

およびビューの使用中

@model.WorkoutDate.ToShortDateString(); 
+0

Brilliant。これは私の歓声のために働いた。 –

+0

@ El-ChapolLii ...答えたようにマークしてください(( - ; – dinotom

+0

)申し訳ありませんが、今すぐ修正:) –

関連する問題