0

在本地机器上的 vs2008 上使用 asp.net mvc2 并托管在 discountasp.net 的共享服务器上

当我无法使 .UTCNow 提供正确的“办公室已打开/关闭”字符串时,问题就开始了,如下所示:

在视图用户控件中:

<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";
        }
    }
}

我尝试删除文件...它仍然编译。

在本地机器上一切正常。

有谁知道服务器不刷新这个帮助文件?

4

1 回答 1

1

网站项目相比,ASP.NET MVC 使用 Web 应用程序项目,这意味着需要对其进行编译才能使您的更改生效。当您在本地机器上工作并在 Visual Studio 中运行该站点时,源代码会自动编译并且更改会生效。要使更改生效,您需要部署bin文件夹中生成的所有程序集。无需将任何源文件复制到服务器(当然aspxascx页面除外)。

于 2010-06-30T17:23:05.477 回答