سؤال

انا لدي طاولتان، Reports و Visualizations. Reports لديه حقل ، VisualizationID, الذي يشير إلى Visualizationحقل يحمل نفس الاسم عبر مفتاح خارجي. كما أن لديها مفتاح فريد معلن في هذا المجال. VisualizationID ليس باطلا. هذا يعني أن العلاقة يجب أن تكون 0..1 إلى 1 ، لأن كل Reports يجب أن يكون السجل فريدًا وليس فارغًا Visualizations السجل المرتبط به.

إطار الكيان لا يرى ذلك بهذه الطريقة. أحصل على الخطأ التالي:

Error 113: Multiplicity is not valid in Role 'Report' in relationship 'FK_Reports_Visualizations'. Because the Dependent Role properties are not the key properties, the upper bound of the multiplicity of the Dependent Role must be *.

ما هي المشكلة هنا؟ كيف يمكنني جعل EF التعرف على تعدد العلاقة المناسبة؟

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

المحلول

يشكو EF لأنه يبدو أنك تستخدم جمعية FK - مما يعني أن التصور هو خاصية للكيان وهناك مرجع تصور أيضًا - ولا يمكنك القيام بذلك مع جمعيات FK.

إذا كنت تستخدم جمعيات مستقلة - مما يعني أنه لا يوجد خاصية تصور - أنت تستطيع تضييق عدد الأطفال.

وبالتالي فإن الحل هو إزالة خاصية التصور من الكيان ، وعندها تحتاج إلى المضي قدمًا في خريطة الجمعية.

أتمنى أن يساعدك هذا

أليكس

نصائح أخرى

لقد تعثرت للتو على نفس المشكلة - أليكس ، شرحك صحيح في حالتي ، ولكن بالطبع عن طريق إزالة عمود FK من النموذج المفاهيمي ، لم يعد لدي القدرة على تبديل كائني ذي الصلة لاحقًا عن طريق تغيير قيمة حقل FK ... سأضطر إلى العودة إلى الحيل القديمة للقيام بذلك!

هل هناك أي خطط للسماح لنا بالحصول على كعكتنا وتناولها أيضًا مع علاقات من 1 إلى 0..1 ، أي أن تكون قادرًا على الحصول على حقل FK أيضًا؟

جريج

(PS كنت سأعلق ، لكن مندوبي ليس مرتفعًا بما يكفي!)

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