باگ: Dbcontext


nima

سلام وقتتون بخیر 
ممنون بابت آموزش هاتون 
امیدوارم وقت کنید سوالم رو جواب بدید .
«در دیتا بیس چرا وقتی برای درست کردن جدول ها و ارتباط‌ها بین آنها به آسانی و ویزارد در 
SQL server management studio 
می شودکارها را  انجام داد 
چرا باید ۲۰ تا کلاس تعریف کنیم و در آخر در db context آنها را معرفی کنیم 
»
روزتون پر از شادی


راه‌حل‌های ارائه شده برای این باگ


رضا عباس نژاد

در این  رابطه اطلاعات خوب و تخصصی را جناب آقای بابایی باید نظر بدهند

ولی با توجه به اطلاعات و تجربیات خودم اینگونه تصور میکنم :

توی پروژه های بزرگ یک مجموعه برای تجزیه و تحلیل برنامه وقت میگذارند مهمترین بخش نرم افزار را که دیتابیس آن است طراحی میکنند و در sql server جدول ها و پروسیجرها و توابع آنها را طراحی و برنامه ریزی میکنند حتی ممکن است که یکسری اطلاعات را هنگام درج و یا حذف و یا بروزرسانی بخواهیم در جدولهای دیگر نیز اعمال کنیم که در sql بصورت تریگر نوشته میشود و اصول برنامه نویسی نیز به همین روش است بعد شما میتوانید به راحتی با ویژوال به دیتابیس متصل شده و اطلاعات موبوطه را با پروسیجرهای مربوطه انجام دهید 

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

ولی در پروژه های کوچکتر و زمانی که مدیریت بانک اطلاعات به عهده برنامه نویس شود فرصت مدیریت کامل و کد نویسی دیتابیس وجود ندارد و از طرفی بایستی امنیت سیستم نیز در نظر گرفته شود

لذا مایکروسافت efcore را راه اندازی کرده که شما بدون اینکه اطلاعاتی در خصوص بانک اطلاعات بصورت تخصصی داشته باشید مراحل ایجاد جدول ها را بصورت پراپرتی نوشته و به آن معرفی کنید تا بقیه کارها را خود EFcore انجام دهد

در این سیستم شما نیاز به نوشتن پروسیجر  ندارید و فقط صرفا با فراخوانی add یا savecotext میتوانید رکورد را در جدول درج و بروز رسانی کنید و یا حذف کنید

برای همین برای اینکه این سیستم بصورت کامل و بدون مشکل کار کند بایستی ابزار ها نصب شود و در dbcontext جدولها به سیستم معرفی گردد تا سیستم بفهمد چه جدول هایی با چه نوع دیتایی دارید تا آن را اتوماتیک مدیریت کند

 

 شما الزامی به استفاده از این سیستم ندارید و میتوانید مانند سابق از مدیریت دیتابیس و سیستم اتصال به آن در ویژوال مانند گذشته استفاده کتید ولی کلیه عملیات crud و امنیت به عهده خودتان خواهد بود

امیدوارم توانسته باشم مفهوم را انتقال دهم



احسان بابائی

سلام

چون طذاحی های امروزه از دیتابیس محوره و دامین محور تغییر کرده و مهمترین بخش پروژه برای ما همون دامینه و از دیتابیس فقط برای نگهداری داده ها استفاده می کنیم.

اگر شما اولویت رو برای دیتابیس در نظر بگیرید

یک دیتابیس طراحی می کنید  و بعد برای همون دیتابیس یک اپلیکیشن طراحی می کنید.

که اپلیکیشن شما کاملا به طراحی دیتابیستونه

اما در اپلیکیشن های مدرن ما باید تمرکز کنیم بر روی دامین و در نهایت در بالاترین لایه ها یک دیتابیس هم به برنامه اضافه می کنیم



پاسخی برای این باگ ارسال کنید

برای ارسال پاسخ باید وارد حساب کاربری خود شوید
ورود به حساب کاربری

;