PDA

View Full Version : سوال: متغیر استاتیک در کلاس



niloofar13
سه شنبه 24 تیر 1393, 11:10 صبح
سلام دوستان من در حال نوشتن برنامه ای هستم که ایمیلهای مربوط به یک صندوق پستی را به کاربران مختلف نمایش می دهد. برای این کار از یک کامپوننت استفاده کردم که ایمیلهای خوانده نشده را از صندوق پستی می گیرد. مساله ای که هست این است که من آ ی دی ایمیلهای خوانده شده را در دیتابیس ذخیره می کنم تا دفعات بعد لود نشوند. برای این کار متغیری را به صورت استاتیک در یک کلاس تعریف کرده ام. وقتی برای اولین بار کاربر وارد سایت می شود این متغیر با باز یابی لیست آی دی ها از دیتابیس پر می شود. استاتیک بودن این متغیر برای این است که فقط دفعه اول اطلاعات از دیتابیس خوانده شود و کاربران دیگری که وارد سایت می شوند دیگر لازم نباشد مجددا اطلاعات از دیتابیس خوانده شود. از طرفی در هربار لود صفحه نیاز است که ایمیلهای جدید نمایش داده شوند بنابراین اگر از متغیر استاتیک استفاده نشود لازم است که هر بار اطلاعات از دیتابیس خوانده شود. می خواستم بپرسم آیا این طرز پیاده سازی درست است؟ و اگر کاربری برنامه اش را ببندد و کاربران دیگر هنوز در حال کار با برنامه باشند آیا مقدار متغیر استاتیک از بین می رود یا نه تاثیری ندارد؟ همچنین آیا اگر همزمان دو کاربر این متغیر را صدا بزنند در برنامه مشکلی ایجاد می شود؟ اگر ایجاد می شود در مورد متدهای استاتیک هم این مساله است یا نه؟ پیشاپیش ممنون

ahmad156
سه شنبه 24 تیر 1393, 17:21 عصر
اینجا (http://www.dotnettips.info/post/487/%D9%85%D8%AA%D8%BA%DB%8C%D8%B1%D9%87%D8%A7%DB%8C-%D8%A7%D8%B3%D8%AA%D8%A7%D8%AA%DB%8C%DA%A9-%D9%88-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87%E2%80%8C%D9%8 7%D8%A7%DB%8C-asp-net)و اینجا (http://www.dotnettips.info/post/325/%D8%A8%D8%B1%D8%B1%D8%B3%DB%8C-%D9%88%D8%A7%DA%98%D9%87-%DA%A9%D9%84%DB%8C%D8%AF%DB%8C-static) رو چک کنین جوابتون رو پیدا میکنین