ローカルマシンのvs2008でasp.netmvc2を使用し、discountasp.netの共有サーバーでホスティングする
次のように、.UTCNowに正しい「Officeis open/closed」文字列を配信させることができなかったときに問題が発生しました。
ビューユーザーコントロール:
<div><%=OfficeTimes.LondonOpenOfficeMessage() %></div>
そしてヘルパーファイルで:
public static class OfficeTimes
{
public string LondonOpenOfficeMessage()
{
if (DateTime.UtcNow.Hour < 17 && DateTime.UtcNow.Hour > 7)
{
return "Office is currently closed";
}
else
{
return "Office is currently open";
}
}
}
そこで、戻り文字列をUTCに変更して(以下のように)、正しい時刻が返され、元の時刻であるかのようにコンパイルされているかどうかを確認しました。
public static class OfficeTimes
{
public string LondonOpenOfficeMessage()
{
if (DateTime.UtcNow.Hour < 17 && DateTime.UtcNow.Hour > 7)
{
return DateTime.UtcNow.Hour.ToString(); //"Office is currently closed";
}
else
{
return DateTime.UtcNow.Hour.ToString(); //"Office is currently open";
}
}
}
ファイルを削除してみました...まだコンパイルされています。
すべてローカルマシンで正常に動作しました。
サーバーがこのヘルパーファイルを更新しないことを誰かが知っていますか?