PDA

View Full Version : حرفه ای: معایب پیاده سازی db با ویزارد linq



ali004
دوشنبه 17 آبان 1389, 21:07 عصر
دوستان من شنیدم که wizard linq برای تعریف بانک توی برنامه زیاد مناسب نیست و دلیلشم اینه که کدهای زیادی رو توی برنامه میاره که شما می تونید ازش صرف نظر کنید و سرعت اجرای برنامه رو هم کم می کنه
اگه اطلاعات بیشتری دارید لطفا راهنماییم کنید
با تشکر

Alireza_Salehi
دوشنبه 17 آبان 1389, 21:39 عصر
مشکلی ندارد استفاده کنید، مواردی هم که کمبودی داشت ه باشد جایگزین های دیگری مانند Entity FrameWork وجود دارد.

ali004
سه شنبه 18 آبان 1389, 11:14 صبح
می شه لطفا موارد کمبود ویزارد رو توضیح بدین؟ نمی دونم که چه کمبودهایی داره که Entity framework آن رو برطرف می کنه .
و اینکه از entity framework فقط توی MVC میشه استفاده کرد یا در یه وب سایت معمولی که ارتباطتش با بانک از طریق linq هم هست می شه استفاده کرد؟

Alireza_Salehi
سه شنبه 18 آبان 1389, 14:19 عصر
Entity Framework قویتر از LINQ to SQL است، برای مثال قابلیت های زیر در LINQ tO SQL وجود ندارد:

1. ارتباط چند به چند بین جداول (many-to-many)
2. اتصال به پایگاه داده های غیر از SQL Server (هر چیزی که توسط ADO.NET پشتیبانی شود در EF نیز پشتیبانی می شود)
3. نگاشت چند به چند بین کلاس ها و جداول پایگاه داده (در LINQ to SQL هر کلاس در dbml به یک جدول پایگاه داده مربوط است ولی در EF یک کلاس می تواند چند جدول یا بخشی از یک جدول باشد.)


LINQ to SQL برای سرعت توسعه بالا وبرای کارهای رایج ساخته شده و دارای ویژگی tightly Couple هست یعنی کلاس ها شدیدا وابسته به دیتابیس هستند. در واقع یک سری کلاس با حداکثر سرعت و بسیار تر و تمیز برای کار با دیتابیس به شما می دهد.

Entity FrameWork برای انعطاف پذیری بالا و کاربرد های پیچیده و بزرگ طراحی شده است ضمن این که Loosely Couple هست یعنی با انعطافی که به شما میده می توانید جوری کلاسها رو طراحی کنید که حتی هیچ شباهتی به شکل دیتابیس شما نداشته باشد.


از EF در WebForms هم می شوداستفاده کرد.

نکته: LINQ یک زبان پرس و جو است و معمولا وقتی در موردش صحبت میشه به صورت LINQ to x صحبت می شود، مثل :
LINQ to SQL
LINQ to Entites
LINQ to Objects
LINQ to xml

شما در مورد ORM هایی که با LINQ سازگار هستند جستجو کنید اطلاعات بیشتری کسب خواهید کرد. مثل : Entity Frame Work و LINQ to SQL

si6arp
سه شنبه 18 آبان 1389, 17:03 عصر
به زبان ساده تر :
Linq To SQL خیلی ماهه....