私は、MVC 4 と Razor の学習に関する次のLynda.com チュートリアルに取り組んできました。表示される時間を、時間、分、次に AM/PM のみで表示しようとすることに固執しています。現時点では、画面にはまだ秒が含まれています (以下を参照)。
この投稿の DateTimeのように日付をフォーマットしようとしましたが、うまくいきませんでした。これで、この投稿のように、「AuctionsController.vb」というタイトルのコントローラー セクションの関数内に次のコードがあります。
Function Auction() As ActionResult
Dim mainauction = New MVCAuction3.Models.Auctions
Dim ts As New TimeSpan(10, 0, 0)
mainauction.Title = "Example Auction"
mainauction.Description = "This is an example Auction"
mainauction.StartTime = DateTime.Now + ts
mainauction.EndTime = DateTime.Now.AddDays(7) + ts
mainauction.StartPrice = 1.0
mainauction.CurrentPrice = Nothing
ViewData("Auction") = mainauction
Return View()
End Function
これは、Razor がビュー "Auction.vbhtml" からコンテンツを表示する方法です。
<p>Start Time: @auction.StartTime.ToString() </p>
<p>End Time: @auction.EndTime.ToString()</p>
<p>Starting Price: @FormatCurrency(auction.StartPrice.ToString())</p>
編集:
これは、モーダルファイルで時間変数を宣言した方法です:
Private Property x_StartTime As DateTime
Private Property x_EndTime As DateTime
Public Property StartTime() As DateTime
Get
Return x_StartTime
End Get
Set(value As DateTime)
x_StartTime = value
End Set
End Property
Public Property EndTime() As DateTime
Get
Return x_EndTime
End Get
Set(value As DateTime)
x_EndTime = value
End Set
End Property
また、次の「Auction.vhtml」ビュー内から取得しようとしましたが、残念ながら「入力文字列の形式が正しくありませんでした」というサーバー エラーが発生しました。:
<p>Start Time: @auction.StartTime.ToString("g") </p>
<p>End Time: @auction.EndTime.ToString("g")</p>
<p>Starting Price: @FormatCurrency(auction.StartPrice.ToString())</p>
時間をフォーマットしていないRazorまたはMVCコードで何が間違っていますか? どんな助けでも大歓迎です!