سؤال

وأنا فضفاضة بعد <وأ href = "http://weblogs.asp.net/rashid/archive/2009/09/13/shrinkr-url-shrinking-service-developed-with-entity-framework- 4-0-الوحدة-آسيا والمحيط الهادئ، صافي MVC-ومسج-الجزء 2.aspx "يختلط =" نوفولو noreferrer "> سلسلة ممتازة من بلوق وظيفة من قبل قاضي Manzur راشد كعملية تعلم لتعلم كيفية تنفيذ بعض أنماط تصميم جديدة (بالنسبة لي على الأقل)، ولكن أنا الحصول على مشكلة منذ البداية.

ولقد نسخ أساسا متاحة له للطبقات Database، RepositoryBase وRepositoryBaseTests، ولكن عندما أحاول تشغيل الاختبارات، وأحصل على رسالة خطأ تقول

<اقتباس فقرة>   

وغير قادر على إنشاء مثيل Booking.Infrastructure.EntityFramework.Repositories.Tests.RepositoryBaseTests الصف. خطأ: System.Reflection.TargetInvocationException: تم طرح استثناء بواسطة هدف استدعاء. ---> System.ArgumentException: شكل سلسلة التهيئة لا يتوافق مع مواصفات تبدأ في الفهرس 0 ..

وخلال المصحح لقد تحققت أن الاستثناء يتم طرح على منشئ للفئة Database، والتي تبدو مثل هذا:

public Database(
    IConfigurationManager configurationManager, 
    string connectionstringName)
: base(
    GetConnectionString(configurationManager, connectionstringName), 
    "BookingEntities")
{ // Nothing happens here }

ويتم طرح الخطأ عند استدعاء منشئ base، ولو كنت بجد رمز القيم التي أنا أرسل حاليا في، انها تبدو مثل هذا:

: base("Dummy connStr", "BookingEntities")

لماذا لا هذا العمل؟

هل كانت مفيدة؟

المحلول

و"الدمية connStr" ليست سلسلة اتصال EF صالحة.

وسلسلة اتصال EF صالحة تبدو مثل:

connectionString="metadata=res://*/Data.Model.csdl|res://*/Data.Model.ssdl|res://*/Data.Model.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=SERVERNAME\SQLDEV2008;Initial Catalog=DBName;Integrated Security=True;MultipleActiveResultSets=True&quot;"
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top