لا يمكن تمكين الميزة مع استقبال الميزات عبر PowerShell
-
03-10-2019 - |
سؤال
لدي مشكلة حيث يمكنني تمكين ميزة واجهة المستخدم ويعمل كل شيء كما هو متوقع من خلال إعدادات الموقع ، ولكن إذا حاولت تمكين الميزة عبر SharePoint PowerShell (الذي نقوم به كجزء من نشر نصوص) ، أحصل على ما يلي:
Enable-spfeature: فشل في إنشاء كائن مستقبل من التجميع "xxxxx ، الإصدار = 1.0.0.0 ، الثقافة = محايد ، publickeytoken = 967e6960f5af91e6" ، الفئة " -4550-822D-1A6C35E58E0 D). اسم المعلمة: اكتب
هل يعرف أي شخص لماذا سيحدث هذا ، أو بعض الأشياء التي يجب أن أتحقق منها؟ من المؤكد أن تعريف الميزة صحيح (نظرًا لأن نشره من خلال عمل واجهة المستخدم كما هو متوقع ، وقد قمت أيضًا بفحص publickeytoken صحيح وما إلى ذلك) ، وإعادة تشغيل الخدمات ولا تمكنني IISReset من استخدام Enable-Spfeature أيضًا.
المحلول
لدي نفس المشكلة. الشيء الغريب هو عندما تفتح نافذة SP2010 PowerShell جديدة وإعادة إصدار نفس الأمر الذي يتم العثور على التجميع دون أي مشاكل. نرى:http://khurramdotnet.blogspot.com/2011/01/enable-spfeature-command-throwing.html
نصائح أخرى
جرب هذا: انتقل إلى لوحة التحكم ، انقر فوق "البرامج" ، انقر فوق "البرامج والميزات" ، حدد "Microsoft SharePoint Server 2010" (أو أي شيء قمت بتثبيته) ، انقر فوق "تغيير" ، حدد "إصلاح" وانقر فوق " يكمل". هذا ما ساعدني.
جرب هذا: http://geoffwebbercross.blogspot.ca/2011/06/failed-to-create-receiver-object-from.htmlلقد نجح الأمر بالنسبة لي ، لم يكن عليّ تغيير غرزة في الكود / الحل الخاص بي
كان لدي هذا بالأمس ، تبين اسم الميزة واسم استقبال الميزة مطابقة. لحلها ، قمت بنسخ الكود المميز في Notepad (كتلة رمز كاملة) أو أي الأحداث التي قمت بترميزها.
- انسخ رمز الحدث بأكمله الذي كتبته ، أي طريقة تنشيطها (بما في ذلك التوقيع)
- قم بإزالة EventReceiver من مشروعك.
- أضف حدثًا جديدًا تم استلامه إلى مشروعك (يمكنك التحقق من الاسم للتغييرات)
- الصق رمز الحدث مرة أخرى في جهاز استقبال الحدث.
أستخدم الكود التالي للنشر باستخدام PowerShell
if(($Solution -ne $null) -and ($Solution.ContainsWebApplicationResource))
{
if ($FeatureScope -eq "Web")
{
Install-SPSolution $SolutionName -url $siteUrl -GACDeployment -Confirm:$false
}
else
{
Install-SPSolution $SolutionName -AllWebApplications -GACDeployment -Confirm:$false
}
}
else
{
Install-SPSolution $SolutionName -GACDeployment -Confirm:$false
}
while($Solution.Deployed-eq$false)
{
Start-Sleep 2
Write-Host "." -NoNewline
}
لا تستخدم PowerShell "العادي" ، استخدم SharePoint 2010 Management Shell بدلاً من ذلك.