سؤال

لقد كنت تعاني مشكلة في الأيام القليلة الماضية و لم أجد حلا.

لدي Visual Studio الحل مع 2 المشاريع ، الأول هو ملف DLL مع كائنات الأعمال و المنطق المشروع الآخر هو WinForm التطبيق ، مرجع الاعتماد على المشروع الأول.

كتبت في البداية الأعمال الكائنات مع السمة LINQ الخرائط و كل شيء على ما يرام.ثم أعتقد أنني سوف تحاول الخارجية الخرائط.تابعت عدة أدلة على الكيفية التي ينبغي أن العمل ؛ ومع ذلك, في كل مرة ركضت رمز في حل أود أن أحصل على InvalidOperationException:مشكلة الخرائط:لا يمكن العثور على نوع 'Org.على سبيل المثال.النظام.المواد من رسم الخرائط, عندما WinForm محاولات لخلق DataContext الكائن.

بعد محاولة تكوينات مختلفة في ملف XML أنا وضعت نسخة من فئة إلى واجهة المستخدم الرسومية الحل تحت مختلف مساحة وعملت.سؤالي هو أليس من الممكن أن خريطة كائن في مكتبة فئة أو إذا كان هو كيف يتم إنجازه.

عينات

dbmap.xml

<Database xmlns="http://schemas.microsoft.com/linqtosql/mapping/2007" Name="Gravel_Dev"><Table Name="dbo.Materials" Member="Material">
<Type Name="Org.Example.System.Material">
  <Column Name="MaterialID" Member="MaterialID" Storage="mMaterialID" DbType="UniqueIdentifier NOT NULL" IsDbGenerated="true" IsPrimaryKey="true"/>
  <Column Name="Code" Member="Code" Storage="mMaterialCode" DbType="Char(4)"/>
  <Column Name="Description" Member="Description" Storage="mDescription" DbType="VarChar(50)"/>
  <Column Name="UnitPrice" Member="UnitPrice" Storage="mUnitPrice" DbType="Decimal(5,2)"/>
</Type>

WinForm التحميل

XmlMappingSource mapping = XmlMappingSource.FromUrl("dbmap.xml");
mContext = new DataContext(Properties.Settings.Default.dbConn, mapping);
reloadTable();
هل كانت مفيدة؟

المحلول

أعتقد أن المشكلة قد يكون الحصول على هو أن الجمعية/مكتبة فئة يحتوي على دروس لم يتم تحميلها في الذاكرة في هذه المرحلة ؟

محاولة الوصول إلى فئة في المكتبة قبل إنشاء البيانات السياق أن نرى ما اذا كان يعمل.

نصائح أخرى

لدي نفس المشكلة.لدينا رسم الخرائط في ملف خرائط مختلفة الجمعيات نحصل على الخرائط خطأ لأن جميع assemplies لم يتم تحميلها في الذاكرة.ما هي حلول مختلفة لهذه المشكلة ؟

لقد قرأت أن من الممكن الإشارة إلى نوع مختلف الجمعية باستخدام AssemblyQualifiedName من نوع.ولكن نحن لم تحصل على عمل.إذا كان هذا ممكن هل يمكنك إعطاء مثال على ما من شأنه أن تبدو وكأنها ؟

حل آخر, أعتقد, هو واحد ملف تعيين لكل للجمعية وإعطاء datacontext الصحيح ملف التعيين في وقت التشغيل.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top