مشکل دراستفاده ازشیاروفرم درزیربرنامه ای که خروجیش voidنیست
من داخل برنامم کلا زیربرنامه هایی که خروجیش ازنوع voidهستش میتونم نام اشیاروی فرمم روبنویسم واستفاده کنم ولی اگه خروجی voidنباشه نمیتونم راه حل چیه؟
به طورمثال:
publicstaticstring EncryptString(string Text)
{
byte[] IV = newbyte[8] { 0, 255, 99, 155, 3, 77, 88, 203 };
string Key = "123456789";
byte[] buffer = Encoding.UTF8.GetBytes(Text);
TripleDESCryptoServiceProvider triple = newTripleDESCryptoServiceProvider();
MD5CryptoServiceProvider md5 = newMD5CryptoServiceProvider();
triple.IV = IV;
triple.Key= md5.ComputeHash(ASCIIEncoding.UTF8.GetBytes(Key));
byte[] encodeText = triple.CreateEncryptor().TransformFinalBlock(buffe r, 0, buffer.Length);
returnConvert.ToBase64String(encodeText);
}
نقل قول: مشکل دراستفاده ازشیاروفرم درزیربرنامه ای که خروجیش voidنیست
ببخشید خط اول کد درست نیومده:
public static string EncryptString(string Text)
نقل قول: مشکل دراستفاده ازشیاروفرم درزیربرنامه ای که خروجیش voidنیست
الان مشکلتون کجاست دقیقا؟!
نقل قول: مشکل دراستفاده ازشیاروفرم درزیربرنامه ای که خروجیش voidنیست
این زیربرنامه همینطوری مثالی بودمشکلی نداره مثلا اگه بخوام داخلش ازیکی ازاشیا فرم مثلا یه textboxیاهرشی دیگه ای استفاده کنم نمیادنام اون شی.
چون خط اول کدpublic static string EncryptString(string Text
خروجیش ازنوعVOID نیست
حالاچیکارکنم بااین شرایط ازاشیاروی فرمم استفاده کنم
نقل قول: مشکل دراستفاده ازشیاروفرم درزیربرنامه ای که خروجیش voidنیست
دوست عزیز اینکه شما نمیتونی توی تابعتون اشیا و کنترل های فرمت رو ببینی ربطی به void نداره، بلکه چون تابعتون static شما به اون اشیا دسترسی ندارین.
اگه میخواین به متن توی اون اشیا توی تابع دسترسی داسته باشید باید به عنوان ورودی برای تابعتون تعریف کنید.
نقل قول: مشکل دراستفاده ازشیاروفرم درزیربرنامه ای که خروجیش voidنیست
خوشبختانه یه خورده بابرنامم کارکردم مشکل حل شدstaticروبرداشتم وبه جای publicاومدمprivateنوشتم کلا به اینصورت
private string encrypt(string aa)
حل شد
موفق باشید