سلام
من تو برنامم به وفور از متغییر Ststic استفاده کردم و تو کار به مشکل همزمانی ورود اطلاعات خوردم و فهمیدم چه خرابکاری کردم
حالا سوالم اینه از چه چیزی استفاده کنم که جایگزین مناسبی برای Static باشه و زمان reload صفحه یا refresh شدن صفحه پاک نشه
به طور مثال شماره کاربری که برای ویرایش کاربر میگیرم ، تو بالای صفحه به صورت لوکال برای همون صفحه تعریفش کردم و وقتی تو گرید ویو کاربر انتخاب میکنه شماره کاربری و میگیره و بعد میره داخل یه تابعی کاراشو میکنه و یه پیغام هشدار میاد که مثلا مطمئنی میخوای ویاریش کنی بعد دقیقا همون لحظه که پیغام اومده یه کاربر دیگه از سیستم دیگه میاد یکی دیگرو انتخاب میکنه و کاربر آخر که انتخاب شده ویرایش میشه
یا مثلا برای تعداد دفعات برای تلاش ورود به سیستم از یه متغییر استفاده کردم و هر بار یدونه بهش اضافه میشه
حالا که بعد 4 بار یه کاربر دیگه بخواد لاگین کنه کانتر من که الان 4 میشه 1
نمیخوام زیاد از شسن استفاده کنم از طرفی هم نمیخوام کاربر صفحه رو رفرش میکنه یا روی دکمه کلیک میشه صفحه رفرش میشه متغیر پاک بشه
سلام
عزیز من متغیرهای استاتیک برای تنظیمات و یا caching استفاده میشن.
شما یه input hidden داخل html تعریف میکنی و این داده ای که میخوای سمت کاربر در دسترس باشه رو میریزی داخل value اون input
به همین سادگی
برای مورد دومتون هم باید عرض کنم که هیچ راهی به جز استفاده از Session که امنیت رو برای شما تامین کنه وچود نداره!
به نظرم راجع به ساز و کار وب کمی مطالعه کنید و چند نمونه کد هم ببینین.
موفق باشید.
میدونم اینم تو اجرا متوجه شدم چون تو برنامه ویندوزی چنین چیزی برنخوردم و تو وب مشکل دارم
میدونم از hidden فیلد باید استفاه کنم اما اولا من جایی لازم دارم آی دی کاربری که انتخاب میشرو داشته باشم و چند جا باهاش کار دارم
دوم اینکه من یه آرایه دارم اونو چجوری بریزم تو hidden فیلد؟ یا ... که با رفرش شدن پاک نشه
ببین id کاربر چیزیه که همیشه بهش نیاز هستش و خیلی مهمه.
باید زمانی که کاربر داخل سایت Login میکنه بعضی از این اطلاعات رو داخل token احراز هویت کاربر که معمولا در کوکی ذخیره میشه نگه داری که به صورت رمز شده سمت کاربر ذخیره میشه و با هر request اون رو سمت سرور از حالت رمز خارج میکنی و ...
برای سوال دوم هم خیلی ساده میتونی در صفحات cshtml با استفاده از razor یک foreach بنویسی و به تعداد آرایه input بسازی مثلا:
@foreach(var item in Model.MyArray) { <input type="hidden" value="@item"/> }
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)