属性设置为true,但它仍然是假的 - 这怎么可能?

时间:2015-03-10 20:53:45

标签: c# asp.net

基本ASP.NET 4.0网站应用程序(网站,而不是WebApplication)。

我正在努力使标准ASP.NET标签控件可见。

我设置了Visible property = true。但它仍然是假的,不会改变。

这是调试器截图。

调试器从第40行移到第41行后,标签的Visible属性仍为False。

怎么可能???

P.S。 AFAIK,ASP.NET为每个线程提供请求,因此在调试时它仍然是相同的线程(相同的请求,相同的线程),而且我是唯一一个在本地执行此应用程序的人。

enter image description here

1 个答案:

答案 0 :(得分:0)

根据您的代码,有多种选择,例如

  1. 属性设置器和getter没有相同的数据源,例如
  2. public bool Visible { set { ; } get { return this.visible; } }

    public bool Visible { set { SetRemotely(value); } get { return cachedValue; } }
    

    public bool Visible
    {
        set { if (someCondition) this.visible = value; }
        get { return this.visible; }
    }
    
    1. 多线程 - 另一个线程更改了属性。

    2. 优化工具 - 由于优化,命令以其他顺序执行。

    3. 有关属性,线程模式,构建设置的更多信息可以帮助缩小范围。