معرفی کامل کلاس های Metadata Model


معرفی کامل کلاس های Metadata Model
برای خرید این درس نیاز است وارد سایت شوید. در صورت نداشتن حساب کاربری عضو شوید.

معرفی کامل کلاس‌های Metadata Model:


در جلسه گذشته کار روی دیتابیس را به صورت database first انجام دادیم. گفتیم که چگونه دیتابیس ایجاد کنیم و در آن برنامه بنویسیم، از دیتابیس مدل بسازیم و چطور کنترلی را طراحی کنیم که بتوانیم روی آن مدیریت داشته باشیم به این معنی که بتوانیم عملیات درج، حذف، ویرایش و نمایش اطلاعات را انجام دهیم. 
در جلسات قبل attributeهای Data Annotation مانند Disply یا Required را در کلاس T_User برای فیلدهای این جدول اضافه کردیم. اما اگر پایگاه داده را تغییر دهیم و نیاز داشته باشیم یک کلاس مدل ایجاد کنیم، تمام ویژگی‌هایی را که برای کلاس مدل اعمال کرده‌ایم از بین می‌روند. در واقع ما نمی‌توانیم در کلاس‌هایی که مدلشان از طریق دیتابیس ساخته شده، تغییری بدهیم. دو روش برای اینکه بتوانیم attributeهایی به فیلدهای خود اضافه کنیم وجود دارد :
 1. استفاده از کلاس‌های Metadata Model
 2. استفاده از کلاس‌های view model 

نکته: هر زمان از روش database first استفاده کردید بهترین راه استفاده از روش Metadata Model است. اما اگر از روش code first استفاده کردید از روش view model  استفاده کنید.

ابتدا یک پروژه جدید ایجاد می‌کنیم. یک controller به نام User و یک action به نام  index و view به نام index ایجاد می‌کنیم.  یک دیتابیس به نام dbTest و یک جدول به نام T_User ایجاد می‌کنیم. روش ساخت دیتابیس را در جلسه گذشته توضیح دادیم. 
به ازای هر جدول در دیتابیس باید یک مدل در برنامه ایجاد کنیم. برای اضافه کردن مدل به روش زیر عمل می‌کنیم. از روش database first استفاده می‌کنیم.

 

1

 

2
 

 

در این قسمت مشخص می کنیم که مدل از روی دیتابیس ساخته شود. 

 

3


 
برای اتصال به دیتابیس گزینه New Connection را انتخاب می‌کنیم و از پنجره باز شده Microsoft SQL Server را انتخاب می‌کنیم.

 

4

 


در این قسمت ابتدا نام سرور را در قسمت Server Name قرار می‌دهیم و در بخش دوم نام دیتابیس خود را انتخاب می کنیم. برای اطمینان از اتصال به دیتابیس می‌توانید روی گزینه Test Connection کلیک کنید و سپس دکمه ok را بزنید. 
 
  

5

 

6

 

7

 

 

در این قسمت نام جداول خود را انتخاب کنید و گزینه pluralize را از حالت انتخاب خارج کنید و سپس finish را بزنید.
 

8


برای اضافه کردن کلاس‌های Meta data، داخل پوشه Models یک پوشه با نام MetaDateModels ایجاد می‌کنیم و در این پوشه کلاسی با نام دلخواه خود ایجاد می‌کنیم. در اینجا نام کلاس ما UserMetaData است و بعد تمام فیلدهای مربوط به کلاسمان را در کلاسی که ایجاد کرده‌ایم، قرار می‌دهیم و تمام تغییراتی را که می‌خواهیم در این کلاس انجام می‌دهیم مانند DataAnnotationها. 

 

9

 

برای اتصال این دو کلاس پایین کلاس UserMetaData یک کلاس از نوع کلاس اصلی ایجاد می‌کنیم و ویژگی‌ایی که در تصویر زیر مشاهده می‌کنید را می‌نویسیم:

 

10

 

کلاسی که از روی مدل ساخته شده از جنس partial است، یعنی می‌توانیم داخل یک فایل دیگر کلاسی داشته باشیم که ادامه کلاس اصلی باشد. یا به عبارتی قسمتی از کلاس را در کلاس دیگری قرار می‌دهیم. علاوه براین در mvc راهی وجود دارد که ما بتوانیم یک کلاس را مکمل یا کامل کننده یک کلاس دیگر رقم بزنیم. که به این کلاس‌ها، کلاس‌های meta data  می‌گویند.
در واقع می‌توانیم یک کلاس متادیتا اضافه کنیم که حاوی ویژگی‌ها باشد. وقتی کلاس مدل را به کلاس متادیتا مرتبط می‌کنیم، این ویژگی‌ها روی مدل اعمال می‌شوند.


در جلسات گذشته controllerهایی که ایجاد می‌کردیم از نوع خالی بودند و action و viewهای مربوط به آن را خودمان ایجاد می‌کردیم و برنامه های مربوط به واکشی اطلاعات، درج، حذف و ویرایش را نوشتیم. اگر در برنامه مدل‌هایی داشتیم ما می ‌توانیم controllerهایی ایجاد کنیم که همه viewها و actionها را خودش ایجاد کند.

 

11

 


در قسمت Model class مشخص می‌کنیم که براساس کدام مدل می‌خواهیم controller ایجاد کنیم. و در قسمت بعد نام کلاس context که مربوط به دیتابیس را انتخاب می کنیم و در انتها نام controller را مشخص می کنیم و Add را می‌زنیم.

 

12
 

 

امیدواریم که این آموزش، برای شما دوستان درسمنی عزیز مفید باشد، درصورت سوال و یا مشکل می توانید به انجمن برنامه نویسان سی شارپ مراجعه کنید. پیشنهادات و انتقادات خود را در بخش نظرات برای ما ارسال کنید. 
امید آنکه بیش از پیش موفق و مؤید باشید.

 

انجمن برنامه نویسان سی شارپ
 


نظر بدهید

نشانی ایمیل شما منتشر نخواهد شد .
برای ارسال نظر نیاز است وارد سایت شوید. در صورت نداشتن حساب کاربری عضو شوید.


مشخصات دوره


مدرس دوره : مهدی عباسی
تعداد جلسات 36 جلسه
مدت زمان 1496 دقیقه
حجم دوره 6/92 گیگابایت
سطح مهارت مقدماتی تا متوسط
وضعیت دوره پایان یافته
: میانگین امتیاز

300,000تومان
برای دسترسی به این دوره وارد یا عضو شوید.
مهدی عباسی
مهدی عباسی

درباره مدرس :

مدیر‌ عامل‌ شرکت آریا‌ نرم‌‌ افزار دارنده مدرک کارشناسی‌ ارشد مهندسی کامپیوتر 12‌ سال سابقه تدریس دروس کامپیوتر را در دانشگاههای دولتی، آزاد، پیام‌نور ملایر، شهیدشمسی‌پور تهران و تدریس برنامه‌نویسی در ... ر انیستیتو ایزایران، مجتمع فنی و موسسه راه‌آینده تهران دارا میباشد و تا به حال راهنمایی انجمنهای علمی دانشگاه و صدها پروژه دانشجویی را برعهده داشته است. تخصص اصلی: با داشتن گواهی‌نامه‌های معتبر تدریس از انیستیتو‌ ایزایران، راه آینده‌تهران و سازمان‌فنی‌حرفه‌ای، تدریس و آموزش‌ دروس کامپیوتر، ‌برنامه‌نویسی کامپیوتر و کلاسهای کنکور کارشناسی و کارشناسی‌ارشد میباشد.همچنین تجربه داوری و نظارت مسابقات برنامه‌نویسی کشوری‌ACM را در سالهای متعدد داشته و تیم مورد رهبری ایشان در 3سال متوالی مقام اول مسابقات کشوری را از آن خود کرده است.ایشان مقالاتی در زمینه شبکه‌های کامپیوتری، تکنیک‌های وزارت دفاع و ... به ثبت رسانده و مشاور و کارشناس در طراحی و برنامه نویسی بیش از 50‌برنامه کاربردی تحت وب و ویندوز و موبایل میباشد. افتخارات دیگر:کسب مقام دوم ایده‌های برتر در مسابقات استارت‌آپ و بکند کشوری را نام برد.بیشتر بدانید