مشاهده نسخه کامل
: مشکل استور پروسیجر با استیمول سافت و EF
سلام دوستان
میخوام یه استور پروسیجر رو به استیمول سافت وصل کنم(به روش Entity framework) ولی مثل کوئری نمیتونم متصلش کنم و به ارور میخورم (تو کوئری مشکلی ندارم)اینم کدم:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
سلام
در روش CodeFirst کد زیر به سادگی اجازه میدهد یک SP را اجرا کنید.
در نهایت کافی است از تابع SPName ایجاد شده برای تغذیه منبع گذارش استفاده کنید.
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
با تشکر ..
من از ef استفاده کردم ولی شما از linq دارید استفاده میکنید...
این چجور استور پروسیجری هست؟ من چیزی ازین نمیدونم لطف کنید راهنمایی کنید
تا اونجا که من میدونم استور پروسیجر اینطوریه..:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
سلام
تا اونجا که من میدونم استور پروسیجر اینطوریه...
بله! :n02:
اینطوری که شما نوشته اید در دیتابیس ساخته میشود:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
و آنطور که در پست قبلی ام برایتان نوشتم در EF میتواند فراخوانی و استفاده شود:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
کافی است در #C کلاس Class1 را new و خروجی تابع SPName را استفاده کنید، این تابع به روشنی مجموعه سطرهایی را که پروسیجر پس میدهد به شما تحویل میدهد.
==============
البته این کد بیشتر مناسب EF-CodeFirst است و در EF-ModelFirst بدلیل ذات گرافیکی امکان طی کردن ویزارد های مربوطه هم وجود دارد...
برای EF-ModelFirst
پس از ساخت پروسیجر در دیتابیس...
به نمایه طراحی دیتابیس در برنامه خودتان بروید و فایل edmx را دبل کلیک کنید...
در جایی خالی راست کلیک کنید و گذینه Upgrade model from database را انتخاب کنید...
در برگه Add بخش Stored Procedures and Functions را باز کنید و SP مورد نظرتان را انتخاب کنید...
و Finish کنید...
مجدد در نمایه طراحی و جایی خالی راست کلیک کرده و گذینه Model browser را انتخاب کنید...
در پالت کمکی Model browser به گره Function Imports بروید...
درصورتیکه تابع تان را در زیر آن مشاهده کردید، راست کلیک و Edit اش کنید و در صورت فقدان راست کلیک و Add کنید...
گذینه های دیالوگ بازشده را با توجه به ماهیت عملکرد تابع تان کنترل و OK کنید...
کل کارها را ذخیره کنید...
حالا باید در کلاس DbContext که برای ارتباط با دیتابیس استفاده میکند SP را داشته باشید:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
==============
یه شخصه ترجیح میدهم دو خط کد شرافت مندانه EF-CodeFirst تایپ کنم تا اینقدر این طرف و آن طرف کلیک کنم!
موفق باشید و شب خوش.
خیلی لطف کردید ممنون:»
ولی من سمت دیتابیسم استوردپروسیجر رو ایجاد و به مدلم اضافه شده تا اینجا مشکلی ندارم و از روش linq to Ef برای منبع استفاده میکنم و بازم مشکلی ندارم ولی اون کدی که اول نوشتم و استوردپروسیجرم db.factorcustreport() هست ولی زمان کامپایل اررور میده و به یکی از try catch هام میره ...
خیلی لطف میکنید اگه کمکم کنید
سلام مجدد
اعتراف میکنم به کد #C پست اول تان دقت نکردم...
اگر برنامه شما به خطا میخورد باید متن کامل و دقیق خطا را اینجا قرار دهید، بطور طبیعی بدون متن خطا نمیتوان کمکی کرد.
فقط دقت کنید که اگر خطایتان InnerException هم دارد، متن انها را هم قرار دهید که مهم تر هم است.
Exception:Caught: "An error occurred while preparing the command definition. See the inner exception for details." (System.Data.Entity.Core.EntityCommandCompilationE xception)
A System.Data.Entity.Core.EntityCommandCompilationEx ception was caught: "An error occurred while preparing the command definition. See the inner exception for details."
Time: 10/20/2014 5:18:07 PM
Thread:<No Name>[20500]
فقط راهی هست که این کد کوتاه تر بشه؟؟
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
سلام مجدد
فقط راهی هست که این کد کوتاه تر بشه؟؟
خیلی کد بزرگی نیست! ...
درصورتیکه به تمام فیلدها نیاز داشته باشید و فیلدها هم تداخل نام نداشته باشند میتوانید از نماد ستاره استفاده کنید.
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
vBulletin , Copyright ©2000-2025, Jelsoft Enterprises Ltd.