انتخاب بین LINQ و StoredProcedure در MVC
با سلام
من می خوام یه سایت با MVC طراحی کنم. مشکل اصلیم اینه که کدومیک از روش های دریافت اطلاعات از دیتابیس رو استفاده کنم. از یه طرف تو پروژه MVC ای که خود مایکروسافت در ویژوال استادیو برای نمونه گذاشته از StoredProcedure استفاده شده و از یه طرف دیگه تو سایت ASP.NET آموزش ها بر اساس LINQ است.
خواستم بپرسم کدومیک از این روش ها بیشتر می تونه نیاز های برنامه نویس ها رو برطرف کنه.
اگر هم چیز جدیدی اومده بفرمایید که از اون استفاده کنیم. با تشکر
نقل قول: انتخاب بین LINQ و StoredProcedure در MVC
بهتره از Entity Framework استفاده کنی.
نقل قول: انتخاب بین LINQ و StoredProcedure در MVC
میشه توضیح بفرمایید این روش از چه نظر بهتر از اون دو روش اخیر هست. چیزی که منو تو فکر انداخته اینه که پس چرا خود مایکروسافت تو نمونه پروژش از Stored Procedure استفاده کرده؟؟
نقل قول: انتخاب بین LINQ و StoredProcedure در MVC
Entity Framework مدل استاندارد مایکروسافت برای برنامه نویسی داده هاست که مزایای زیادی دارد که البته مقایسه آن با روش های دیگر نیاز به بررسی بسیار مفصل دارد؛ ولی از این نکته نباید غافل شویم که Stored Procedure سریعتر از دو روش اشاره شده است؛ به دلیل این که دو روش دیگر نیاز به تفسیر و کامپایل دارند؛ بدین معنی که کدهای C# یا VB باید ابتدا به SQL تفسیر و سپس کامپایل شوند تا روی پایگاه داده اجرا شوند، اما sp آبجکت آماده و از پیش کامپایل شده است.
نقل قول: انتخاب بین LINQ و StoredProcedure در MVC
سلام ،
Entity Framework یک ابزار ORM هست.
در کدام مثال مایکروسافت از Stored Procedure استفاده شده ؟
LINQ هم یک Language Feature هست ، اگر منظور شما LINQ to SQL هست این تکنولوژِی مدت هاست جای خودش را به Entity Framework (که اخیرا Open source شده) داده .
اول درباره ی ORM و اهمیت آن جستجو کنید ، سپس ORM ها را بررسی و یکی را انتخاب کنید.
Entity Framework راه حل پیشنهادی مایکروسافت و یک ORM جهت دسترسی به داده ها هست.
نقل قول: انتخاب بین LINQ و StoredProcedure در MVC
نقل قول:
نوشته شده توسط
asif1358
Entity Framework مدل استاندارد مایکروسافت برای برنامه نویسی داده هاست که مزایای زیادی دارد که البته مقایسه آن با روش های دیگر نیاز به بررسی بسیار مفصل دارد؛ ولی از این نکته نباید غافل شویم که Stored Procedure سریعتر از دو روش اشاره شده است؛ به دلیل این که دو روش دیگر نیاز به تفسیر و کامپایل دارند؛ بدین معنی که کدهای C# یا VB باید ابتدا به SQL تفسیر و سپس کامپایل شوند تا روی پایگاه داده اجرا شوند، اما sp آبجکت آماده و از پیش کامپایل شده است.
خیر اینطور نیست.
Query های Entity Framework پارامتری هستند. SQL Server رفتار هوشمندی در مقابل آنها دارد.
نقل قول: انتخاب بین LINQ و StoredProcedure در MVC
نقل قول:
نوشته شده توسط
ricky22
در کدام مثال مایکروسافت از Stored Procedure استفاده شده ؟
اگر شما با ویژوال استادیو 2010 یه پروژه MVC جدید ایجاد کنید و Empty هم نباشه. میبینید که از این روش استفاده کرده. االبته بگم که من اینو از اینجا فهمیدم که در پروژه هیچ کوری ای نیست و فقط در بخش دیتابیس تعدادی Stored Procedure وجود داره
نقل قول: انتخاب بین LINQ و StoredProcedure در MVC
سلام
نکته ای که برای من خییییلی مهمه اینه که چون دارم وقت میذارم تا بتونم در حد حرفه ای یاد بگیرم نمی خوام یه چیزی یاد بگیرم و بعد بگن این قدیمی بوده یا ....
همچنین آیا مهم هست که در یک پروژه سرعت اجرا رو بالاتر از نحوه پیاده سازی بدونیم یا خیر. یعنی اینکه اگر با Stored Procedure سرعت بالاتری خواهد داشت آیا بهتر نیست از Entity صرف نظر کرد.
با تشکر
نقل قول: انتخاب بین LINQ و StoredProcedure در MVC
نقل قول: انتخاب بین LINQ و StoredProcedure در MVC
یه مقایسه توی StackOverFlow انجام شده .
http://stackoverflow.com/questions/2698151
از نظر سرعت ، به نظر میاد که StoredProcedure نسبت به کدهای ORM سریع تر باشه .
در ضمن برای سرعت بیشتر ، یه CodeGenerator آنلاین هست که SP هم تولید میکنه .
امتحانش کنید => http://www.pureobjects.com/default.aspx
نقل قول: انتخاب بین LINQ و StoredProcedure در MVC
سلام
از دوستان کسی هست جواب این سوال منو بده که:
می تونم همین نمونه پروژه ای که خود مایکروسافت در ویژوال استادیو 2010 ارائه میده رو برای پروژم گسترش بدم. یعنی از همون برای پروژه خودم استفاده کنم و گسترشش بدم. نه این که بشینم و یه سیستم دیگه طراحی کنم. همچنین آیا نحوه ارتباط با دیتابیسش خوب هست و میشه ازش بهترین استفاده رو کرد؟یعنی اینقدر انعطاف پذیر هست که بشه همه کاری باهاش کرد؟
با تشکر
نقل قول: انتخاب بین LINQ و StoredProcedure در MVC
نقل قول:
نوشته شده توسط
ricky22
خیر اینطور نیست.
Query های Entity Framework پارامتری هستند. SQL Server رفتار هوشمندی در مقابل آنها دارد.
دوست من! این یعنی چه؟ مگر کوئیری هایی که با زبانهایی مانند سی شارپ می نویسید نباید برای اس کیو ال سرور ترجمه و کمپایل شود؟
نقل قول: انتخاب بین LINQ و StoredProcedure در MVC
نقل قول:
نوشته شده توسط
djsaeedkhan
سلام
از دوستان کسی هست جواب این سوال منو بده که:
می تونم همین نمونه پروژه ای که خود مایکروسافت در ویژوال استادیو 2010 ارائه میده رو برای پروژم گسترش بدم. یعنی از همون برای پروژه خودم استفاده کنم و گسترشش بدم. نه این که بشینم و یه سیستم دیگه طراحی کنم. همچنین آیا نحوه ارتباط با دیتابیسش خوب هست و میشه ازش بهترین استفاده رو کرد؟یعنی اینقدر انعطاف پذیر هست که بشه همه کاری باهاش کرد؟
با تشکر
کسی هست جواب منو بده؟؟ من هنوز تو اینکه از چه روشی برای ارسال و دریافت اطلاعات از دیتابیس استفاده کنم موندم. خواهشا راهنمایی بفرمایید. من حرفه ای ترین روش رو میخام بدونم. با سپاس
نقل قول: انتخاب بین LINQ و StoredProcedure در MVC
دوست عزیز.
نه تو این مساله که تو هر مساله دیگه ای جواب مطلق وجود نداره. اینکه بعضی دوستان میگن SP سریعتره درسته. ولی شما باید ببینی چی به دست میاری و چی از دست میدی.
به هر حال برنامه ای که با زبان اسمبلی نوشته میشه از برنامه ای که با زبان های سطح بالا (مثل سی شارپ ) نوشته میشه سریعتره. ولی ما اگه بخوایم نرم افزاری تولید کنیم که سالها برامون کار کنه و بتونیم به خوبی ازش پشتیبانی کنیم و توسعه اش بدیم، باید از ابزارها و زبان های جدید استفاده کنیم. چیزی که الان مطرحه اینه که میگن اگه در تولید نرم افزار مستقیما از sql استفاده بشه و نه از ORM ، مثل اینه که با زبان اسمبلی برنامه نوشته شده.
میدونیم که سایتی مثل stackoverflow که بسیار هم پر بیننده پر تراکنش هست طبق اعلام خودش بوسیله asp.net mvc و linq to sql تهیه شده. در استفاده از ORM مثل همه جای دیگه نحوه کدنویسی بسیار مهمه و اگه نادرست و اشتباه استفاده بشه رو کارایی برنامه تاثیر میذاره. ولی اگه درست و اصولی کار بشه مزایاش بیشتر از معایب هستش.
لینک مربوط به اطلاعات سایت stackoverflow:
http://blog.stackoverflow.com/2008/0...ow-built-with/
نقل قول: انتخاب بین LINQ و StoredProcedure در MVC
سلام
به نظر شما یعنی اگر از LINQ TO SQL استفاده کنم بهتره؟ یا اینکه از Entity Framework استفاده کنم بهتره.
خواهشا لطف بفرمایید نظر نهایی خودتون رو بدید. یعنی اگر شما تا حالا نمونه عملی داشتید از چه روشی استفاده کردید. بالاخره در اجرا تجربه زیادی کسب میشه
نقل قول: انتخاب بین LINQ و StoredProcedure در MVC
نقل قول:
نوشته شده توسط
djsaeedkhan
سلام
به نظر شما یعنی اگر از LINQ TO SQL استفاده کنم بهتره؟ یا اینکه از Entity Framework استفاده کنم بهتره.
خواهشا لطف بفرمایید نظر نهایی خودتون رو بدید. یعنی اگر شما تا حالا نمونه عملی داشتید از چه روشی استفاده کردید. بالاخره در اجرا تجربه زیادی کسب میشه
ببین دوست عزیز ، ساده و سربسته براتون میگم :
LINQ to SQL خیلی وقته منقرض شده(خود مایکروسافت گفت بیخیالش شید!!!) ... و الان از EF 4 به بالا همینجوری داره میاد (EF5 هم اومده!) و تا EF6 هم دارن برنامه میریزن و همینطور اخیرا EF متن باز شده ... الان به نظرت Linq to SQL بهتره؟!!!!!
من تجربه ی پروژه ی عملی با EF CodeFirst 4.1 رو داشتم و میتونم خدمتتون عرض کنم که دیگه دو سالی هست از Ado.Net خام استفاده نمیکنم!!! (مثه اینه که یه عمری سوار زانتیا شده باشی حالا بخوای بیای سوار ژیان بشی!!!)
موفق باشید ...
نقل قول: انتخاب بین LINQ و StoredProcedure در MVC
همونطور که دوستمون گفتن، مایکروسافت توسعه linq to sql رو متوقف کرده. اگه می خواید از تکنولوژی مایکروسافت استفاده کنید باید از entity framework استفاده کنید. من خودم از این استفاده می کنم.
ولی من تاکیدی روی اینکه از کدام ORM استفاده بشه ندارم. مثلا یه ORM قوی دیگه وجود داره برای .net به اسم NHibernate.
نقل قول: انتخاب بین LINQ و StoredProcedure در MVC
با سلام
از دوستان کسی نمونه پروژه ای یا کدی سراغ دارن که در سطح بالایی باشه و بتونه منو راهنمایی کنه
با سپاس