سؤال

عند استخدام Entity Framework Migrations، فإن DbMigration الطبقة الأساسية لديه طريقة Sql التي تأخذ المعلمات في كائن مجهول

لا أستطيع طوال حياتي معرفة كيفية استخدامه.

        Sql(@"
                UPDATE dbo.SlideSets 
                SET Name = @Name, 
            ", false, new {
                Name = "Foo"
            }
        );

النتائج في الخطأ

System.Data.SqlClient.SqlException (0x80131904): Must declare the scalar variable "@Name"

ما هو بناء الجملة الصحيح لهذا البيان؟

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

المحلول

لقد بحثت في كود مصدر EF ويبدو أن هذه المعلمة (أو بالأحرى MigrationOperation.AnonymousObject الخاصية التي تم إنشاؤها منه) لا يتم استخدامها على الإطلاق!

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

نصائح أخرى

المولد القياسي لـ MSSQL لا يفعل شيئًا مع الكائن المجهول في هذه الحالة.تحتاج إلى وضع المعلمة مباشرة في الأمر.أو يمكنك استخلاصها بنفسك والتعامل معها.

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