در صورتی که تا کنون با Entity Framework کار کرده باشید، قطعا دیده اید که فایلی با پسوند edmx برای شما ایجاد میشود که تقریبا تمامی کارهای استفاده از دیتا در این فایل پوشش داده میشود. با این اوصاف شاید بد نباشد با هم نگاهی به داخل این فایل
بیاندازیم و از وقایع پشت پرده با خبر شویم.
برای این کار روی یک فایل edmx راست کلیک کنید و گزینه Open with و سپس XML (Text) Editor را انخاب نمایید تا این فایل را به حالت XML مشاهده نمایید. در صورتی که روی علامت های منها کنار صفحه کلیک کنید تا قسمت های مختلف جمع شوند، فایل شما به شکل زیر خواهد بود و از 4 قسمت اصلی تشکیل شده است.
CSDL: The Conceptual Schema
در این قسمت ما میتوانیم مدل منطقی را مشاهده نماییم. یعنی تعریفی از Entity ها که در حقیقت کلاس هایی هستند که ما در دات نت با آنها سر ور کار داریم در این قسمت وجود دارد.
این قسمت از فایل خود از بخش های مختلفی تشکیل شده است. قسمت Entity Container که در حقیقت نگه دارنده لیست اشیا موجود در برنامه است و نام و نوع کلاس ها ما است. Entity Container خود شامل یک سری از Entity set ها است و هر Entity Set یکی از کلاس های ما است.
SSDL: The Store Schema
در این قسمت هم مشخصات دیتابیس ما نگه داری میشود. لیستی از جداول و ویو های داخل دیتابیس را در این قسمت میتوانیم مشاهده کنیم. در این قسمت نیز Entity Set ها وجود دارند که هر کدام خاصیتی دارند که معلوم میکند که از چه جنسی هستند.
C-S Mapping:
این قسمت هم از نامش پیداست، کار مپ کردن را برای ما انجام میدهد.یعنی در این قسمت میتوانیم رابطه بین Entity setهای بخش csdl و ssdl را معلوم کنیم. میتوانیم معلوم کنیم هر ستون از هر جدول به چه پراپرتی از چه کلاسی متصل باشد.
EF Designet:
آخرین قسمت هم که دقیقا به ساختار دیاگرام ما در ویژوال استودیو بر میگردد. اینکه کدام کلاس در چه ابعادی رسم شود و در چه موقعیتی از صفحه قرار گیرد.
در کل کار کردن با این قسمت ها بسیار ساده است و به سادگی با بررسی این فایل میتوانید از جزئیات آن با خبر شوید.
بیاندازیم و از وقایع پشت پرده با خبر شویم.
برای این کار روی یک فایل edmx راست کلیک کنید و گزینه Open with و سپس XML (Text) Editor را انخاب نمایید تا این فایل را به حالت XML مشاهده نمایید. در صورتی که روی علامت های منها کنار صفحه کلیک کنید تا قسمت های مختلف جمع شوند، فایل شما به شکل زیر خواهد بود و از 4 قسمت اصلی تشکیل شده است.
CSDL: The Conceptual Schema
در این قسمت ما میتوانیم مدل منطقی را مشاهده نماییم. یعنی تعریفی از Entity ها که در حقیقت کلاس هایی هستند که ما در دات نت با آنها سر ور کار داریم در این قسمت وجود دارد.
این قسمت از فایل خود از بخش های مختلفی تشکیل شده است. قسمت Entity Container که در حقیقت نگه دارنده لیست اشیا موجود در برنامه است و نام و نوع کلاس ها ما است. Entity Container خود شامل یک سری از Entity set ها است و هر Entity Set یکی از کلاس های ما است.
SSDL: The Store Schema
در این قسمت هم مشخصات دیتابیس ما نگه داری میشود. لیستی از جداول و ویو های داخل دیتابیس را در این قسمت میتوانیم مشاهده کنیم. در این قسمت نیز Entity Set ها وجود دارند که هر کدام خاصیتی دارند که معلوم میکند که از چه جنسی هستند.
C-S Mapping:
این قسمت هم از نامش پیداست، کار مپ کردن را برای ما انجام میدهد.یعنی در این قسمت میتوانیم رابطه بین Entity setهای بخش csdl و ssdl را معلوم کنیم. میتوانیم معلوم کنیم هر ستون از هر جدول به چه پراپرتی از چه کلاسی متصل باشد.
EF Designet:
آخرین قسمت هم که دقیقا به ساختار دیاگرام ما در ویژوال استودیو بر میگردد. اینکه کدام کلاس در چه ابعادی رسم شود و در چه موقعیتی از صفحه قرار گیرد.
در کل کار کردن با این قسمت ها بسیار ساده است و به سادگی با بررسی این فایل میتوانید از جزئیات آن با خبر شوید.
1 نظرات:
سلام
دوست عزیز توجه داشته باشید که فایل EDMX به دوبخش تقسیم می شود که عبارتند از Runtime و Designer که قسمت های SSDL ، CSDL و C-S mappin زیر مجموعه این عنصر هستند و درواقع پشت صحنه کار به این صورت است که در زمان اجرا اصلا هیچ فراخوانی به قسمت Designer صورت نمی گیرد بلکه فقط قسمت Runtime در زمان اجرا مورد استفاده قرار می گیرد البته باید توجه داشته باشید که در زمان اجرا سه قسمت درون عنصر Runtime به سه فایل XML جداگانه تقسیم می شود(خود EDMXکامپایل نمی شود) و اصلا قسمت Designer در خروجی کامپایل شده قرار ندارد
برای اطلاعات بیشتر در مورد فایل ٍEDMX می توانید به صفحه زیر در MSDN مراجعه کنید :
http://msdn.microsoft.com/en-us/library/cc982042.aspx
در ضمن قسمت درج نظرات شما دارای اشکال می باشد به صورتی که تکست باکس و دکمه ارسال در قسمت پیش نمایش مشاهده نمی شود و بنده برای ارسال مجبور شدم Height این قسمت را تغییر دهم.
ارسال یک نظر