لا يمكن لـ Mono's XSP Weberver العثور على mysql.web.dll على Linux

StackOverflow https://stackoverflow.com/questions/2882071

سؤال

أنا أعمل على الحصول على مشروع ASP.NET الخاص بي يعمل على Linux. لقد تم اختبار الكود الخاص بي باستخدام XSP على Windows ، لكنني الآن أحاول التأكد من أنه يمكنني تطوير واختبار Linux أيضًا. تحقيقًا لهذه الغاية ، قمت بتشغيل Ubuntu ولدي Monodevelop و MySQL. لقد قمت بتنزيل أحدث موصل/شبكة MySQL وأعتقد أنني قمت بتثبيته بشكل صحيح.

لا توجد حزمة من شأنها تثبيت موصل/شبكة MySQL تلقائيًا للتوزيع ، لذا قمت بتنزيل ملف zip 6.2.3 من موقع MySQL. لقد اكتشفت الآن المشكلة بحساسية الحالة لأن ملف ZIP يحتوي على أسماء ملفات في Secorrase ، ويتوقع Mono منها في حالة كبيرة. لذلك قمت بتغيير أسماء الملفات إلى mysql.data.dll ، و mysql.web.dll على التوالي. لقد استخدمت أيضًا Gacutil لتثبيت كلا الملفين على GAC. وبالمثل ، قمت بإضافة الملفات إلى دليل Mono Lib. الملفات التالية موجودة على الجهاز الخاص بي:

/usr/lib/mono/gac/MySql.Data/6.2.3.0__c5687fc88969c44d/MySql.Data.dll
/usr/lib/mono/gac/MySql.Web/6.2.3.0__c5687fc88969c44d/MySql.Web.dll
/usr/lib/mono/2.0/MySql.Data.dll
/usr/lib/mono/2.0/MySql.Web.dll

لقد قمت أيضًا بإنشاء ملفات الحزمة حتى أتمكن من إضافة مراجع إلى التجميعات في Monodevelop. يحتوي المجلد/usr/lib/mono/2.0 على ملفين .pc أضفتهما.

mysql.web.pc:

Name: MySql.Web
Description: ASP Membership, Role and Profile providers powered by MySQL
Version: 6.2.3
Libs: -r:/usr/lib/mono/gac/MySql.Web/6.2.3.0__c5687fc88969c44d/MySql.Web.dll

mysql.data.pc:

Name: MySql.Data
Description: Provides connectivity to MySQL databases
Version: 6.2.3
Libs: -r:/usr/lib/mono/gac/MySql.Data/6.2.3.0__c5687fc88969c44d/MySql.Data.dll

في هذه المرحلة ، يمكنني استخدام التجميعات في المشاريع داخل Monodevelop. تظهر التجميعات في قائمة التجميعات المتاحة عندما أقوم بتحرير مراجع المشروع. يتجمع المشروع الآن دون خطأ داخل Monodevelop. ومع ذلك ، عندما أقوم بتشغيل مشروع الويب المترجم في XSP ، يتم عرض الخطأ التالي في المتصفح:

System.io.filenotfoundException: لا يمكن تحميل الملف أو التجميع 'mysql.web.dll ، الإصدار = 6.2.3.0 ، الثقافة = محايد ، publickeytoken = c5687fc88969c44d' أو واحدة من تبعاتها. لا يمكن للنظام العثور على الملف المحدد.

ما يثير الدقة هو أن الخطأ في الأصل هو أنه لا يمكن تحميل MySQL.بيانات.dll والآن رسالة الخطأ هي أنه لا يمكن تحميل MySQL.الويب.dll. مما يعني أنني قمت بإصلاح المشكلة بطريقة ما مع DLL البيانات ، والآن لدي مشكلة في DLL على الويب. لقد ذهبت وأعادت أن أتعلم إصلاح مشكلة DLL للبيانات ، لكنني غير قادر على عمل DLL على الويب.

لسوء الحظ ، ما زلت جديدًا على Linux و Mono (ولكن ليس لـ ASP.NET) ولقد نفدت الأشياء التي يجب تجربتها. وبالمثل ، لم أجد أي شيء على Google لمحاولة بخلاف ما تم وصفه أعلاه والذي يتركني أطلب المساعدة.

هل يمكن لأي شخص مساعدتي في معرفة لماذا لا يمكن لـ XSP العثور على التجميع وما يمكنني فعله حيال ذلك؟

شكرا ، -سوف

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

المحلول

يمكنك محاولة تعيين بعض متغيرات البيئة التي يجب أن تخبرك أين تبحث كل مونو عن التجميعات:

mono_log_level = "debug" mono_log_mask = "dll" xsp2

نصائح أخرى

ليس الإصلاح المثالي (لا أعرف لماذا يحدث خطأ) ، ولكن إذا كنت في عجلة من أمرك ، فقم بنسخ mysql.web.dll إلى دليل bin في تطبيقك.

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