PDA

View Full Version : استفاده از فانکشن در گرید ویو



M.KH-SH
جمعه 21 بهمن 1390, 12:02 عصر
سلام به همه عزیزان

من یک فانکشن دارم برای uncode کردن متونی که در بانک استفاده کردم

این فاکشن زمانی که در خود صفحه باشه کار میکنه و گرید ویو اونو به خوبی تبدیل میکنه

unhash(eval("nu"))

ولی وقتی داخل یک کلاس بارگذاری میکنم و از طریق اون میخوام فراخوانی کنم نمیشه و با خطا مواجه میشم


میشه راهنمایی کنین

مرسی از لطف همه دوستان

mmnoody2006
جمعه 21 بهمن 1390, 12:33 عصر
class.unhash(eval("nu"))

fakhravari
جمعه 21 بهمن 1390, 13:33 عصر
اگذ کلاس Static گرفتید که با روش پست 2 وگر نه باید نمونه بگیرید از کلاس

M.KH-SH
جمعه 21 بهمن 1390, 14:57 عصر
متوجه منظورتون نشدم

دوست عزیز من کلاس رو برای متغییر تعریف میکنم و همونطور که دوستمون گفتن میشه


class1 a = new class1();

و کدی که در گرید وارد میشه:::

a.unhash(eval("nu"))

این اولین کاری بود که قبل از طرح این سئوال انجام دادم و به 2 تا error بر میخورم که میگه کلاس به صورت private هستش ولی همیشه برای اتصالات بانک من از این روش استفاده میکنم حالا اگه ویندوز بود با زبان vb خیلی راحت با ماژول کارم راه مییوفتاد ولی مشکل اینجاست برنامه نویسی وب بیش از حد محدودیت داره


اینم خطایی که داره بهم میده:::

'_Default.a' is not accessible in this context because it is 'Private'.

mmnoody2006
جمعه 21 بهمن 1390, 16:31 عصر
کلا نمی شه منظور شما رو درک کرد . :گیج:

یعنی می خوای از متغییر بجای کلاس استفاده کنی ؟ :متعجب: :گریه:

M.KH-SH
جمعه 21 بهمن 1390, 17:58 عصر
گویا شما انجام ندادی این کار رو دوست عزیز

شما یک کلاس رو زمانی که بخوای از متغییر ها و دستور ها و پروپرتی ها استفاده کنی همینجوری میگی هوی بیا اینجا بشین و این کار رو انجام بده؟

یا شایدم شما با دات نت رفیق شدی و از روش های دیگه این کار رو انجام میدی

M.KH-SH
جمعه 21 بهمن 1390, 18:09 عصر
دوستان مرسی از همکاری شما عزیزان
با کمی استراحت مشکلم حل شد

فقط باید یکم دور میزدم نحوه عملکرد رو که جواب میشه ::::

[VB]
Dim a As New data
Function change(ByVal x As String) As String
change = a.unhash(x)
End Function

و برای خاصیت text گریدویو اون ستون از جدول هم باید به این فورم بنویسم :::
change(eval("nu"))


به این روش دیگه به پیغام خطا هم مواجه نمیشم البته شاید روش دیگه ای باشه ولی این روش ابتکاری هستش

mmnoody2006
جمعه 21 بهمن 1390, 18:26 عصر
change(eval("nu"))

برادر ما اسگول کردی شما که داری از تابع استفاده می کنی چرا میگی میخوام متغیر رو تو صفحه داشته باشم :تشویق:

M.KH-SH
شنبه 22 بهمن 1390, 02:24 صبح
حالا دوست عزیز من نمیدونم شاید شما اسکول شده باشی ولی کلا شما هنوز متوجه استفاده کردن از یک کلاس نیستی و بهتره بری با روش های خودت حال کنی دوست عزیز

شما یک کلاس ایجاد کن و داخل اون یک function بزار و از اون خروجی بگیر بعد اون خروجی رو به یک ستون از گرید ویو نسبت بده بعد متوجه کل ماجرا میشی

البته اگه یاد داشته باشی که برای خودت کدگذاری کنی متون رو

سئوال من این بود که میخوام در بخش text یک label در یک ستون بتونم از متغییری که کلاس رو داخل اون ریختم استفاده کنم که با اررور مواجه میشم
مثلا یک کلاس داری به نام class1
و این کلاس رو در صفحه خودت فراخوانی میکنی با استفاده از یک متغییر ::: dim a as new class1

حالا این کلاس یک تابع عمومی داره به نام unhash که مقدایر کد شده من رو دریافت و به متن اصلی تبدیل میکند و خروجی میده

حالا فرض این باشه که جدولی که این کدگذاری روش انجام داده با نام nu باشه

حالا میخوایم این روش رو پیداه سازی کنیم که جواب میشه:::

a.unhash(eval("nu"))

نتیجه باید این باشه که متن من به صورت اصلی در اومده باشه نه به شکل کد ولی کلا با خطا مواجه میشه که با استفاده از یک فانکشن واسط این مشکل برطرف شد

حالا جناب با ادب کلا اسم تاپیک رو گذاشتم استفاده از فانکشن در گرید ویو حالا اگه امکان داره شما توضیح بدین که حرف های شما اولا چه ربطی به این تاپیک داره