C#代码在localhost与live服务器中的行为不同

时间:2012-07-12 15:17:44

标签: c# asp.net refresh publish pageload

我的代码中有以下C#代码,用于常规Web应用程序:

protected void Page_Load(object sender, EventArgs e)
{
    if (!validTime())
    {
        btnEdit.Enabled = false;
        btnSubmit.Enabled = false; btnSubmit2.Enabled = false;
        lblSuccess.Text = "It is not currently the time to edit picks for this week.";
        lblSuccess.ForeColor = System.Drawing.Color.Red;
        if (picksMade())
        {
            displayCurrentPicks();
        }
    }
    else
    {
        if (picksMade())
        {
            btnEdit.Enabled = true;
            btnSubmit.Enabled = false; 
            btnSubmit2.Enabled = false;
            displayCurrentPicks();
            lblSuccess.Text = "Viewing your current picks";
            lblSuccess.ForeColor = System.Drawing.Color.Green;
            if (Session["Success"] != null && Session["Success"].ToString() != String.Empty)
            {
                lblSuccess.Text = Session["Success"].ToString();
                lblSuccess.ForeColor = System.Drawing.Color.Green;
                Session.Remove("Success");
            }
        }
        else
        {
            btnEdit.Enabled = false;
            btnSubmit.Enabled = true; btnSubmit2.Enabled = true;
            displayCreatePicks();
            lblSuccess.Text = "Create your picks for this week";
            lblSuccess.ForeColor = System.Drawing.Color.Green;
        }
    }
}

问题是,当我使用ASP.NET Development Server测试它时,这段代码很有用。当我将它发布到我的实时服务器时,它有一些不同的行为。

我有一个web方法,使用此签名将数据插入我的数据库:

[WebMethod]
public static void savePicks(List<string> Points, List<string> Teams, List<string> TieBreaker)

同样,在测试服务器上它运行并且运行良好。问题是,当方法返回时它应该刷新页面,它确实如此,但是在实时服务器上我的page_load事件中的代码没有运行?或者运行方式不同?它从不调用displayCurrentPicks()方法?或者如果确实如此,它运行不正常?除了它在测试服务器上运行完美。

我无法检查这个代码是否踩踏,因为当我在测试服务器上运行时效果很好。实时服务器托管在Godaddy上。

我已经尝试了一切。我尝试在正确的方法之后进行页面刷新,并在我的javascript中强制再次运行page_load事件。什么都行不通。我已经在这几天了。我相信我的所有代码都是发布的。我做了所有通常的“愚蠢的检查”。数据进入数据库,当有数据时,picksMade()函数返回true。页面刷新时会显示数据。

为什么实时服务器不运行我发布给它的代码?为什么它会运行不同的东西?还是表现得与众不同?我知道它是一个不同的服务器,但不应该运行相同的代码吗?

1 个答案:

答案 0 :(得分:0)

函数validTime()究竟是做什么的?如果您要检查特定的时间限制,可能是您的开发服务器设置为您的本地时区,这就是它正常工作的原因,但在您的实时服务器上,时区可能会有所不同。只是一个猜测。