PDA

View Full Version : سوال: استفاده از متغیر سراسری و دسترسی به کنترلها در وب متد



negar442
سه شنبه 01 اردیبهشت 1394, 23:36 عصر
من می خوام در webmethod از متغیرها و کنترلها استفاده کنم ولی موفق نشدم ؛ کد زیر رو در نظر بگیرید :



using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Data;


public partial class manage101 : System.Web.UI.Page
{
mainClass con = new mainClass();
SqlDataAdapter ad;
DataSet ds;
SqlConnection cn = new SqlConnection(mai.strcon);
SqlCommand cm = new SqlCommand();

[System.Web.Services.WebMethod]
public static void test()
{

}
protected void Page_Load(object sender, EventArgs e)
{
}

}




من در تابع test نمی تونم از متغیر های ad ,cn,cm,... استفاده کنم ! همچنین یک کنترل لیست باکس دارم lst1 که به اون هم دسترسی ندارم و وقتی اسمش رو مینوسم یک پیغام خطا صادر می کنه! به نظر شما راه حل چیه؟

Davidd
چهارشنبه 02 اردیبهشت 1394, 09:36 صبح
داخل وب متد نمیشه به کنترل های صفحه دسترسی داشت. وب متد مثه یه سرویس که از صفحات دیگه هم میشه فراخوانی کرد، بنابراین مستقل از کنترل های صفحه است.
دقیق تر توضیح بدین که میخاسن چیکار کنین. شاید راه حل وب متد نباشه

negar442
چهارشنبه 02 اردیبهشت 1394, 17:28 عصر
داخل وب متد نمیشه به کنترل های صفحه دسترسی داشت. وب متد مثه یه سرویس که از صفحات دیگه هم میشه فراخوانی کرد، بنابراین مستقل از کنترل های صفحه است.
دقیق تر توضیح بدین که میخاسن چیکار کنین. شاید راه حل وب متد نباشه

می خوام بعد از کلیک روی دکمه داده های یک فیلد از جدول بانک اطلاعاتی رو بریزم تو لیست باکس؛ البته با ای جکس و بدون استفاده از آپدیت پنل!

negar442
پنج شنبه 03 اردیبهشت 1394, 21:30 عصر
منتظر راهنماییتون هستم!

Davidd
شنبه 05 اردیبهشت 1394, 09:24 صبح
می خوام بعد از کلیک روی دکمه داده های یک فیلد از جدول بانک اطلاعاتی رو بریزم تو لیست باکس؛ البته با ای جکس و بدون استفاده از آپدیت پنل!
بدون آپدیت پنل یه کم سخته. دو تا راه به نظرم میرسه. اول اینکه داده ها به سمت کلاینت بفرستی و در سمت کلاینت با Jquery داده ها رو در لیست باکس قرار بدی.
راه دوم اینه که تو وب متد یه لیست باکس جدید بسازید و با داده های دیتابیس پر کنید و کد html لیست باکس به صورت یک رشته به سمت کلاینت فرستاده بشه و در سمت کلاینت کد html دریافت شده رو با لیست باکس قبلی جایگزین کنید. من اینکارو برای یوزکنترل انجام دادم