替换静态属性的最佳替代品

时间:2013-10-09 06:42:38

标签: c# asp.net static

我的SiteMaster类下面有静态属性

public static string Success
{
      get { return _Success; }
      set { _Success = value; }
}

我可以在我的子页面上访问此属性

SiteMaster.Success = "Saved Successfully";

由于发生了这种冲突

冲突意味着:

SiteMaster.Success = "#different messages";

使用不同的消息设置应用程序的所有子页面。

由于此消息有时会互换,而不需要的消息会在意外事件中发生。

请建议

1 个答案:

答案 0 :(得分:2)

解决此问题的一种方法是创建会话密钥并在其中存储您的消息,这将解决不同用户的所谓冲突。

Session["Success"] = "Saved Successfully";

然而,如果同一用户在同一浏览器中使用两个或多个标签,则仍会发生所谓的冲突。

提交后显示消息的正确方法是设置ViewState变量,该页面实例是特定的。

ViewState["Success"] = "Saved Successfully";