دسته بندی ها
01:23 1400/10/30

خطای Keyword not supported: source هنگام اتصال پایگاه داده در Entity Framework

مشخصات سوال کننده :
کاربر : mrx10     امتیاز کاربر : 0     رتبه کاربر : 7061
دسته بندی : سی شارپ Sql Server Entity Framework

به این سوال امتیاز بدهید    0
تعداد بازدید این سوال : 5410
1 نظر
pedram_khan : آیا خطایی در این روش دریافت می کنید ؟ متن خطا رو لطفا قرار بدید

امتیاز کاربر : 277   رتبه کاربر : 6   تاریخ ثبت : 09:43 1400/10/30
هوش مصنوعی

پاسخ هوش مصنوعی

برای رفع خطای "Keyword not supported: source" که در Entity Framework مشاهده می کنید، باید اطمینان حاصل کنید که کانکشن استرینگ شما به درستی قالب بندی شده باشد. این خطا به این دلیل به وجود می آید که Entity Framework نمی تواند کلیدواژه های مشخص شده در Connecting String را شناسایی کند.

شما باید از ترکیب صحیح کلیدواژه ها و پارامترهای مورد نیاز برای Entity Framework استفاده کنید. به عنوان مثال، برای اتصال به یک پایگاه داده SQL Server با استفاده از یک فایل MDF، می توانید از الگوی زیر استفاده کنید:

<connectionStrings>
    <add name="Notes_DBEntities" 
         connectionString="metadata=res://*/Nete_Model.csdl|res://*/Nete_Model.ssdl|res://*/Nete_Model.msl; 
         provider=System.Data.SqlClient; 
         provider connection string=&quot;Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Notes_DB.mdf;Integrated Security=True;User Instance=True;Initial Catalog=Notes_DB;&quot;" 
         providerName="System.Data.EntityClient" />
</connectionStrings>

نکته مهمی که باید در نظر داشته باشید این است که پارامتر `AttachDbFilename` در String کانکشن به درستی قرار گیرد و به معادله درستی اشاره کند. همچنین اگر با خطای دسترسی (Access Denied) مواجه شدید، مطمین شوید که کاربر جاری دارای دسترسی لازم به دایرکتوری فایل MDF است. می توانید با راست کلیک بر روی پوشه مربوطه، به تب Security رفته و مجوزهای لازم را بررسی کنید.

در نهایت در صورت نیاز به اتصال به یک پایگاه داده موجود، باید مطمین شوید که پایگاه داده ای با نام `Notes_DB` در SQL Server شما وجود دارد یا اینکه از نام متفاوتی استفاده کنید که با نام دیتابیس در SQL Server شما همخوانی داشته باشد.

به این پاسخ امتیاز بدهید    0
امتیاز: - رتبه: -
پاسخ دهنده : pedram_khan 21:03 1400/11/01

خطای شما به این خاطر هست که کانکشن استرینگ در ORM های مختلف متفاوت هست. احتمالا شما رشته اتصال خودتون رو به حالت Ado.net دارید می نویسید. لینک زیر رو مطالعه کنید دقیقا همین خطا رو داشته :

دلیل خطای Keyword not supported: data source در انتیتی فریم ورک Code First

 

خطای دومی هم که قرار دادید که Access id denied هست. یعنی دسترسی به دیتابیس در سیستم عامل شما وجود نداره. باید دسترسی ها یا محل ذخیره سازی دیتابیس رو بررسی کنید. اطلاعات شما از سوال کم هست و نمیشه به دقت پاسخی گفت.

ویرایش شده در جمعه 1 بهمن 1400 ساعت 21:05:05
به این پاسخ امتیاز بدهید    1
امتیاز: 277 رتبه: 6
1 نظر
mrx10 : برنامه از همون اول از طریق entity وصل شده. چه اطلاعات دیگه ای نیاز دارید؟ من از سایت کانکشن استرینگ هم کد رو کپی کردم که باز هم نشد

امتیاز کاربر : 0   رتبه کاربر : 7061   تاریخ ثبت : 11:01 1400/11/01
برای ارسال پاسخ لطفا وارد حساب کاربری خود شوید.   ورود