私の目標はトレーニングの最新の日付を取得し、それに1年追加して表示することです。私はコードfisrtとASP.net MVCを使用しています。私の最初のテーブルはPersonと呼ばれ、人に基本的なすべてが含まれています。 2番目の表はSessionと呼ばれ、前の日付がすべて含まれ、個人は訓練されています。 Sessions.csは次のようになります using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations;DateTime + 1年を表示
namespace CleryAct.Models
{
public class Session
{
[Key]
public int ID { get; set; }
[StringLength(9, MinimumLength = 9, ErrorMessage = "Rocket Number must be longer than 9 characters.")]
public string rockets { get; set; }
[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}", ApplyFormatInEditMode = true)]
public DateTime training { get; set; }
public virtual Person Person { get; set; }
}
}
私のビューのコードは私が私のビューに新しい足場項目を追加し、人物データベースにリンクを生成しました。私は+1年が下に表示される必要がありますが、私は現在のコードでこのエラーが発生しています。
@foreach (var item in Model) {
<tr>
<td>
@Html.DisplayFor(modelItem => item.csa)
</td>
<td>
@Html.DisplayFor(modelItem => item.lname)
</td>
<td>
@Html.DisplayFor(modelItem => item.fname)
</td>
<td>
@Html.DisplayFor(modelItem => item.rockets)
</td>
<td>
@Html.DisplayFor(modelItem => item.email)
</td>
<td>
@Html.DisplayFor(modelItem => item.Sessions.ElementAtOrDefault(0).training.AddYears(1))*
</td>
<td>
変数はDateTimeです。私は剃刀MVCを使用しています
そしてエラーですが... ... ...? –
あなたのモデルには、 'public DateTime trainingEnd => training.AddYears(1)'のような別のプロパティを追加して、注釈を追加するだけです。 – DavidG
System.Web.Mvc.dllで 'System.InvalidOperationException'型の例外が発生しましたが、ユーザーコードで処理されませんでした。 追加情報:テンプレートは、フィールドアクセス、プロパティアクセス、一次元配列インデックス、または単一パラメータのカスタムインデクサ式。 – netgen