مساحة الاسم System.linq مفقودة حتى مع الإشارة إلى System.core.dll
-
26-09-2019 - |
سؤال
عندما أقوم بفتح موقع الويب الخاص بـ ASP Net الخاص بي في Visual Studio 2010 ، تقول الخصائص "Target Framework 3.5" ، ولكن عندما أحاول استخدام مساحة اسم LINQ ، يشتكي برنامج التحويل البرمجي من ذلك.
"لا يمكن العثور على اسم مساحة الاسم أو اسم" var "(هل تفتقد إلى توجيه أو مرجع تجميع؟)"
"اسم مساحة الاسم أو اسم" LINQ "غير موجود في نظام المساحة" (هل تفتقد مرجع تجميع؟) "
لقد أشرت يدويًا إلى بعض DLL لإصلاح مشكلتي ، لكن لا يوجد أي نجاح.
<add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Data.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
مساعدة؟ :-)
المحلول
إذا كنت لا تستطيع حتى الاستخدام var
, ، هذا يشير إلى أنه لا يستخدم حتى الإصدار الصحيح من برنامج التحويل البرمجي C#. (يجب أن تكون قادرًا على الاستخدام var
حتى عند استهداف .NET 2.0 ، طالما أنك تستخدم برنامج التحويل البرمجي C# 3 أو C# 4.) أود التركيز على العمل أولاً قبل أي شيء آخر.
هل من الممكن أن تقوم بتشغيل IIS ولكنك لا تم تكوينها بشكل مناسب؟ قد يكون من المفيد النظر إلى تكوين موقع الويب الخاص بك حول هذا الجانب من الأشياء ، وربما إعادة تشغيل ASPNET_REGIIS.
نصائح أخرى
أنا فقط أصلح مشكلة مماثلة إضافة أ targetFramework="4.0"
تنسب إلى compilation
عنصر في web.config
الشظية ذات الصلة المعدلة هي:
<compilation debug="true" targetFramework="4.0">
<assemblies>
<add assembly="System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
</assemblies>
</compilation>