2016-12-29 3 views
0

のAsp:コードスタティックメソッド内のASPコントロールにアクセスするには?

<asp:TextBox ID="TextBox1" runat="server" ReadOnly="true"></asp:TextBox> 
<asp:TextBox ID="TextBox2" runat="server" ReadOnly="true"></asp:TextBox> 

C#の:私のASPページで

[System.Web.Services.WebMethod] 
public static Array LoadAssetAssignView() { 
string sql = "SELECT Time,Inuse FROM table4"; 
using(SqlConnection Connection = new SqlConnection((@ "Data Source"))) { 
    using(SqlCommand myCommand = new SqlCommand(sql, Connection)) { 
    Connection.Open(); 
    using(SqlDataReader myReader = myCommand.ExecuteReader()) { 
    DataTable dt = new DataTable(); 
    dt.Load(myReader); 
    Connection.Close(); 
    Num1 = textbox1.text; //Error(Can't access my asp control) 
    Num2 = textbox2.text; 
    } 
    } 
} 
} 

私は私のバックエンドでは、私のrequirement.Butための二つのテキストボックスを関与、私は静的メソッドでテキストボックスにアクセスすることはできません。いくつかのアイディアを提案する。コメントよりもむしろ答えが高く評価されています。

+2

非staticにする – Backs

+0

[ASP.netの静的メソッド内のページコントロールにアクセスする方法](http://stackoverflow.com/questions/31514188/how-to-access-page-controls- inside-a-static-method-in-asp-net) – Danieboy

+0

Webサービスでコントロールを使用することはできません。私が間違っていない場合は、Webサービスでそれを使用しようとしています。代わりに、これはメソッドのパラメータとして直接値を渡します –

答えて

4

これを試してみてください!

[System.Web.Services.WebMethod] 
      public static Array LoadAssetAssignView() 
       { 
       string sql = "SELECT Time,Inuse FROM table4"; 
       using (SqlConnection Connection = new SqlConnection((@"Data Source"))) 
        { 
        using (SqlCommand myCommand = new SqlCommand(sql, Connection)) 
         { 
          Connection.Open(); 
          using (SqlDataReader myReader = myCommand.ExecuteReader()) 
          { 
           DataTable dt = new DataTable(); 
           dt.Load(myReader); 
           Connection.Close(); 
           Page page = (Page)HttpContext.Current.Handler; 
           TextBox TextBox1 = (TextBox)page.FindControl("TextBox1"); 
           TextBox TextBox2 = (TextBox)page.FindControl("TextBox2"); 
           Num1=TextBox1 .text; 
           Num2=TextBox2 .text; 
        } 
       } 
      } 
     } 

thisを参照してください。

関連する問題