यह ASP.NET पहचान या ASP.NET कोर से संबंधित नहीं है। यह सामान्य रूप से एंटिटी फ्रेमवर्क से संबंधित है। जब आप किसी डेटाबेस को अपडेट करते हैं, तो EF __EFMigrationsHistory
. का उपयोग करता है यह रिकॉर्ड करने के लिए कि कौन से माइग्रेशन निष्पादित किए गए थे ताकि यह भविष्य में उन्हें फिर से निष्पादित न करे।
यह कार्यक्षमता डेटाबेस प्रदाता . द्वारा कार्यान्वित की जाती है , ईएफ ही नहीं। कम से कम एक ऐसा मामला था जहां PostgresSQL के लिए Npgsql प्रदाता ने तालिका नहीं बनाई ।
समाधान आसान है - तालिका स्वयं बनाएं:
CREATE TABLE `__EFMigrationsHistory`
(
`MigrationId` nvarchar(150) NOT NULL,
`ProductVersion` nvarchar(32) NOT NULL,
PRIMARY KEY (`MigrationId`)
);
अपडेट करें
एक एक और था समान प्रश्न 2016 में। यह आधिकारिक MySQL प्रदाता का एक बग है। फिक्स टेबल बनाना है। इकलौता भी नहीं। उदाहरण के लिए, एसिंक्रोनस ऑपरेशंस को एक अलग थ्रेड पर चलाकर नकली किया जाता है।
मेरा सुझाव है कि आप Pomelo.EntityFrameworkCore.MySql जैसे तृतीय-पक्ष MySQL प्रदाताओं की जांच करें। . वे पाए और ठीक किए गए 1 साल पहले माइग्रेशन इतिहास बग।
यह देखते हुए कि MySQL का स्वामी Oracle है , कनेक्टर पर बहुत अधिक प्रगति की अपेक्षा न करें। या डेटाबेस।