У меня есть WebMethod, где я просто хочу перевернуть свойство в true.static void C# webmethod не может ссылаться на пользовательский контроль?
Я помещаю его в код-позади страницы .aspx, используя C#.
public partial class Data : Base
{
protected void Page_Load(object sender, EventArgs e)
{
this.bgc1.BGEnabled = false;
}
[WebMethod(EnableSession = true)]
public static void EnableBellows()
{
this.bgc1.BGEnabled = true;
}
}
Я объявляю свойство в файле .ascx.cs:
private bool _enabled = true;
public bool BGEnabled
{
get { return _enabled; }
set { _enabled = value; }
}
Наконец я называю WebMethod с поста JQuery Ajax.
Я получаю сообщение об ошибке, которое this
недопустимо при статическом свойстве. Эта ошибка присутствует только в WebMethod, но не в Page_Load.
Моя цель - перевернуть BGEnabled на true. Если мой подход неверен, что мне нужно делать по-другому? Мне нужно сделать это из сообщения ajax.
внутри статического метода вы не можете получить доступ к объекту, смотрите на [MSDN] (https: // MSDN .microsoft.com/en-us/library/79b3xss3.aspx) – Grundy