مشاركة عبر


الإرشادات التفصيلية: إنشاء مخصص توزيع الخطوة لمشاريع SharePoint

عند نشر المشروع SharePoint ، Visual Studio 2010 تنفيذ سلسلة من صواب الخطوات بترتيب معين. يتضمن ‏‫Visual Studio العديد من الخطوات المضمنة توزيع ولكن يمكنك أيضاً إنشاء الخاصة بك.

في هذه معاينة يتم إنشاء خطوة نشر مخصصة لترقية حلول على SharePoint الخادم. تضمين ‏‫Visual Studio خطوات توزيع المضمنة العديد من المهام أو مثل retracting أو إضافة حلول ولكن لا تتضمن خطوة نشر لترقية الحلول. بشكل افتراضي، عند نشر حلاً SharePoint ‏‫Visual Studio أولاً retracts الحل (إذا تم بالفعل نشره) ومن ثم redeploys الحل الكامل. للحصول على مزيد من المعلومات حول المضمنة صواب الخطوات، راجع نشر الحل SharePoint الحزم.

توضح هذه الإرشادات التفصيلية المهام التالية:

  • إنشاء ملحق ‏‫Visual Studio ينفذ مهمتين الرئيسي:

    • ويعرف هذا مخصص توزيع الخطوة لترقية حلول SharePoint.

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

  • إنشاء مخصص جهازي صواب SharePoint تسمى بواسطة التجميع ملحق. تكون الأوامر SharePoint الطرق التي يمكن استدعاؤها بواسطة التجميعات ملحق استخدام واجهات برمجة التطبيقات (APIs) في SharePoint الخادم طراز الكائن. لمزيد من المعلومات، راجع استدعاء في طرازات كائن SharePoint.

  • إنشاء حزمة ‏‫Visual Studio ملحق (VSIX) إلى نشر كلاً من التجميعات.

  • اختبار الجديدة توزيع الخطوة.

المتطلبات الأساسية

تحتاج إلى المكونات التالية على الكمبيوتر تطوير لإكمال هذه معاينة:

معرفة المفاهيم التالية مفيدة ولكن لا يتطلب إلى إكمال في معاينة:

إنشاء المشروع

لإكمال هذه معاينة هذه، تحتاج إلى إنشاء ثلاثة المشاريع:

  • مشروع VSIX إلى إنشاء حزمة VSIX إلى نشر الملحق.

  • مشروع مكتبة فئة بتطبيق الملحق. هذا صواب يجب توجيه .NET Framework 4.

  • مشروع مكتبة فئة تعريف الأوامر SharePoint مخصصة. يجب أن هذا المشروع استهداف the.NET Framework 3.5.

يبدأ التوضيح من خلال إنشاء المشاريع.

لإنشاء مشروع VSIX

  1. ابدأ Visual Studio.

  2. من القائمة File (ملف)، أشر إلى New (جديد)، ثم انقر فوق Project (مشروع).

  3. في مربع حوار مشروع جديد ، قم بتوسيع ‏‫#Visual C أو عقد Visual Basic ثم انقر فوق Windows.

    ملاحظة

    يتوفر العقدة القابلية للتوسعة فقط في حالة تثبيت SDK 2010 صواب. لمزيد من المعلومات، راجع قسم المتطلبات في الأعلى.

  4. في مربع التحرير والسرد في أعلى مربع الحوار ، حدد .NET Framework 3.5 أو .NET Framework 4 .

  5. انقر فوق القالب VSIX مشروع.

  6. في المربع الاسم، اكتب X-UA-Compatible.

  7. انقر فوق موافق.

    Visual StudioبإضافةGenerateExternalDataLists المشروع إلى مستكشف الحلول.

إلى إنشاء ملحق المشروع

  1. في مستكشف الحلول, ينقر على اليمين عقدة الحل انقر فوق إضافةومن ثم انقر فوق مشروع جديد.

    ملاحظة

    في مشاريع Visual Basic عقدة الحل تظهر في مستكشف الحلول فقط عند تحديد إظهار الحل في خانة الفحص عام، مشاريع وحلول، مربع حوار الخيارات.

  2. في مربع حوار مشروع جديد ، قم بتوسيع ‫#Visual C أو عقد Visual Basic ثم انقر فوق Windows.

  3. في مربع التحرير والسرد في أعلى مربع الحوار ، حدد .NET Framework 3.5 أو .NET Framework 4 .

  4. تحديد قالب مشروع مكتبة الفئات.

  5. في المربع الاسم، اكتب X-UA-Compatible.

  6. انقر فوق موافق.

    Visual Studio يضيف DeploymentStepExtension المشروع صواب الحل ويتم فتح ملف التعليمات البرمجية Class1 الافتراضي.

  7. إحذف تعليمات برمجية ملف Class1 من المشروع.

إلى إنشاء مشروع الأمر SharePoint

  1. في مستكشف الحلول, ينقر على اليمين عقدة الحل انقر فوق إضافةومن ثم انقر فوق مشروع جديد.

    ملاحظة

    في مشاريع Visual Basic عقدة الحل تظهر في مستكشف الحلول فقط عند تحديد إظهار الحل في خانة الفحص عام، مشاريع وحلول، مربع حوار الخيارات.

  2. في مربع الحوار صواب جديد Project ، قم بتوسيع Visual C#‎ أو Visual Basicثم انقر فوق Windows.

  3. صواب قالب المشروع مكتبة الفئات.

  4. في مربع التحرير والسرد في أعلى مربع الحوار ، حدد .NET Framework 3.5 أو .NET Framework 3.5 .

  5. في المربع الاسم، اكتب X-UA-Compatible.

  6. انقر فوق موافق.

    صواب إضافة المشروع SharePointCommands إلى الحل وفتح ملف التعليمات البرمجية Class1 الافتراضي.

  7. إحذف تعليمات برمجية ملف Class1 من المشروع.

تكوين المشروع

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

إلى تقوم بتكوين المشروع DeploymentStepExtension

  1. في المشروع DeploymentStepExtension صواب اثنين رمز ملفات يطلق عليها:

    • UpgradeStep

    • DeploymentConfigurationExtension

  2. في قائمة المشروع انقر فوق إضافة مرجع .

  3. تشغيل التبويب .NET ، اضغط المفتاح 'Ctrl' ثم انقر فوق التجميعات التالية له ثم انقر فوق ‏‏موافق :

    • Microsoft.VisualStudio.SharePoint

    • النظام.ComponentModel.إنشاء

إلى تقوم بتكوين المشروع SharePointCommands

  1. في المشروع SharePointCommands صواب يسمى ملف التعليمات برمجية أوامر.

  2. في مستكشف صواب ، انقر فوق عقدة المشروع SharePointCommands.

  3. في قائمة المشروع انقر فوق إضافة مرجع .

  4. تشغيل التبويب .NET ، اضغط المفتاح 'Ctrl' ثم انقر فوق التجميعات التالية له ثم انقر فوق ‏‏موافق :

    • Microsoft SharePoint ™

    • Microsoft.VisualStudio.SharePoint.الأوامر

تعريف مخصص توزيع الخطوة

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

تعريف مخصص توزيع الخطوة

  1. DeploymentStepExtension بالمشروع مزدوج-صواب ملف التعليمات البرمجية UpgradeStep.

  2. قم بلصق التعليمات البرمجية التالية في "المفكرة":

    ملاحظة

    بعد إضافة هذا التعليمات البرمجية ، سيصبح في المشروع بعض أخطاء الترجمة. هذه الأخطاء سوف تختفي عند إضافة تعليمات برمجية أخرى فيما بعد.

    Imports System
    Imports Microsoft.VisualStudio.SharePoint
    Imports Microsoft.VisualStudio.SharePoint.Deployment
    Imports System.ComponentModel.Composition
    
    Namespace Contoso.DeploymentSteps.Upgrade
    
        ' Export attribute: Enables Visual Studio to discover and load this deployment step.
        ' DeploymentStep attribute: Specifies the ID for this new deployment step.
        ' UpgradeStep class: Defines a new deployment step that can be used to upgrade a solution 
        '     on a SharePoint site.
        <Export(GetType(IDeploymentStep))> _
        <DeploymentStep("Contoso.DeploymentSteps.UpgradeSolution")> _
        Friend Class UpgradeStep
            Implements IDeploymentStep
    
            Private solutionName As String
            Private solutionFullPath As String
    
            Private Sub Initialize(ByVal stepInfo As IDeploymentStepInfo) _
                Implements IDeploymentStep.Initialize
                stepInfo.Name = "Upgrade solution"
                stepInfo.StatusBarMessage = "Upgrading solution..."
                stepInfo.Description = "Upgrades the solution on the local machine."
            End Sub
    
            ' Specifies whether the solution can be upgraded.
            Private Function CanExecute(ByVal context As IDeploymentContext) As Boolean _
                Implements IDeploymentStep.CanExecute
    
                ' SharePoint returns all the installed solutions names in lower case.
                solutionName = (context.Project.Package.Model.Name & ".wsp").ToLower()
                solutionFullPath = context.Project.Package.OutputPath
                Dim solutionExists As Boolean = _
                    context.Project.SharePointConnection.ExecuteCommand(Of String, Boolean)(
                    "Contoso.Commands.IsSolutionDeployed", solutionName)
    
                ' Throw exceptions in error cases because deployment cannot proceed.
                If context.Project.IsSandboxedSolution = True Then
                    Dim sandboxMessage As String = "Cannot upgrade the solution. Upgrade deployment " & _
                        "configuration does not support Sandboxed solutions."
                    context.Logger.WriteLine(sandboxMessage, LogCategory.Error)
                    Throw New InvalidOperationException()
                ElseIf solutionExists = False Then
                    Dim notDeployedMessage As String = String.Format("Cannot upgrade the solution. The IsSolutionDeployed " & _
                        "command cannot find the following solution on the SharePoint site: {0}.", solutionName)
                    context.Logger.WriteLine(notDeployedMessage, LogCategory.Error)
                    Throw New InvalidOperationException(notDeployedMessage)
                End If
    
                ' Execute step and continue with deployment.
                Return True
            End Function
    
            Private Sub Execute(ByVal context As IDeploymentContext) _
                Implements IDeploymentStep.Execute
                context.Logger.WriteLine("Upgrading solution: " & solutionName, LogCategory.Status)
                context.Project.SharePointConnection.ExecuteCommand("Contoso.Commands.UpgradeSolution", _
                    solutionFullPath)
            End Sub
    
        End Class
    End Namespace
    
    using System;
    using Microsoft.VisualStudio.SharePoint;
    using Microsoft.VisualStudio.SharePoint.Deployment;
    using System.ComponentModel.Composition;
    
    namespace Contoso.DeploymentSteps.Upgrade
    {
        // Enables Visual Studio to discover and load this deployment step.
        [Export(typeof(IDeploymentStep))]
    
        // Specifies the ID for this new deployment step.
        [DeploymentStep("Contoso.DeploymentSteps.UpgradeSolution")]
    
        // Defines a new deployment step that can be used to upgrade a solution on a SharePoint site.
        internal class UpgradeStep : IDeploymentStep
        {
            private string solutionName;
            private string solutionFullPath;
    
            // Implements IDeploymentStep.Initialize.
            public void Initialize(IDeploymentStepInfo stepInfo)
            {
                stepInfo.Name = "Upgrade solution";
                stepInfo.StatusBarMessage = "Upgrading solution...";
                stepInfo.Description = "Upgrades the solution on the local machine.";
            }
    
            // Implements IDeploymentStep.CanExecute. Specifies whether the solution can be upgraded.
            public bool CanExecute(IDeploymentContext context)
            {
                // SharePoint returns all the installed solutions names in lower case.
                solutionName = (context.Project.Package.Model.Name + ".wsp").ToLower();
                solutionFullPath = context.Project.Package.OutputPath;
                bool solutionExists = context.Project.SharePointConnection.ExecuteCommand<string, bool>(
                    "Contoso.Commands.IsSolutionDeployed", solutionName);
    
                // Throw exceptions in error cases because deployment cannot proceed.
                if (context.Project.IsSandboxedSolution)
                {
                    string sandboxMessage = "Cannot upgrade the solution. The upgrade deployment configuration " +
                        "does not support Sandboxed solutions.";
                    context.Logger.WriteLine(sandboxMessage, LogCategory.Error);
                    throw new InvalidOperationException(sandboxMessage);
                }
                else if (!solutionExists)
                {
                    string notDeployedMessage = string.Format("Cannot upgrade the solution. The IsSolutionDeployed " +
                        "command cannot find the following solution: {0}.", solutionName);
                    context.Logger.WriteLine(notDeployedMessage, LogCategory.Error);
                    throw new InvalidOperationException(notDeployedMessage);
                }
    
                // Execute step and continue with deployment.
                return true;
            }
    
            // Implements IDeploymentStep.Execute.
            public void Execute(IDeploymentContext context)
            {
                context.Logger.WriteLine("Upgrading solution: " + solutionName, LogCategory.Status);
                context.Project.SharePointConnection.ExecuteCommand("Contoso.Commands.UpgradeSolution",
                    solutionFullPath);
            }
        }
    }
    

إنشاء تكوين توزيع تضمين مخصص توزيع الخطوة

إنشاء ملحق مشروع تكوين نشر جديد. تكوين نشر جديد يتضمن خطوة توزيع مخصصة العديد من الخطوات المضمنة توزيع. هذا التكوين توزيع يسهّل لمطوري SharePoint إلى الاستخدام خطوة توزيع الترقية في مشاريع SharePoint.

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

إلى إنشاء تكوين توزيع

  1. DeploymentStepExtension بالمشروع مزدوج-صواب ملف التعليمات البرمجية UpgradeStep.

  2. قم بلصق التعليمات البرمجية التالية في "المفكرة":

    Imports Microsoft.VisualStudio.SharePoint
    Imports Microsoft.VisualStudio.SharePoint.Deployment
    Imports System.ComponentModel.Composition
    
    Namespace Contoso.DeploymentSteps.Upgrade
    
        ' Export attribute: Enables Visual Studio to discover and load this project-level extension.
        ' DeploymentConfigurationExtension class: Defines a project-level extension. The extension creates 
        '     a new deployment configuration that includes the upgrade deployment step.
        <Export(GetType(ISharePointProjectExtension))> _
        Friend Class DeploymentConfigurationExtension
            Implements ISharePointProjectExtension
    
            Private Sub Initialize(ByVal projectService As ISharePointProjectService) _
                Implements ISharePointProjectExtension.Initialize
                AddHandler projectService.ProjectInitialized, AddressOf ProjectInitialized
            End Sub
    
            ' Creates the new deployment configuration.
            Private Sub ProjectInitialized(ByVal Sender As Object, ByVal e As SharePointProjectEventArgs)
                Dim deploymentSteps As String() = New String() _
                {
                    DeploymentStepIds.PreDeploymentCommand, _
                    DeploymentStepIds.RecycleApplicationPool, _
                    "Contoso.DeploymentSteps.UpgradeSolution", _
                    DeploymentStepIds.PostDeploymentCommand _
                }
                Dim retractionSteps As String() = New String() _
                {
                    DeploymentStepIds.RecycleApplicationPool, _
                    DeploymentStepIds.RetractSolution
                }
                Dim configuration As IDeploymentConfiguration = e.Project.DeploymentConfigurations.Add( _
                    "Upgrade", deploymentSteps, retractionSteps)
                configuration.Description = "This is the upgrade deployment configuration"
            End Sub
    
        End Class
    End Namespace
    
    using Microsoft.VisualStudio.SharePoint;
    using Microsoft.VisualStudio.SharePoint.Deployment;
    using System.ComponentModel.Composition;
    
    namespace Contoso.DeploymentSteps.Upgrade
    {
        // Enables Visual Studio to discover and load this project-level extension.
        [Export(typeof(ISharePointProjectExtension))]
    
        // Defines a project-level extension. The extension creates a new deployment configuration that includes the
        // upgrade deployment step.
        internal class DeploymentConfigurationExtension : ISharePointProjectExtension
        {
            // Implements ISharePointProjectExtension.Initialize.
            public void Initialize(ISharePointProjectService projectService)
            {
                projectService.ProjectInitialized += ProjectInitialized;
            }
    
            // Creates the new deployment configuration.
            private void ProjectInitialized(object sender, SharePointProjectEventArgs e)
            {
                string[] deploymentSteps = new string[] 
                {
                    DeploymentStepIds.PreDeploymentCommand,
                    DeploymentStepIds.RecycleApplicationPool,
                    "Contoso.DeploymentSteps.UpgradeSolution",
                    DeploymentStepIds.PostDeploymentCommand 
                };
    
                string[] retractionSteps = new string[] 
                {
                    DeploymentStepIds.RecycleApplicationPool,
                    DeploymentStepIds.RetractSolution                
                };
    
                IDeploymentConfiguration configuration = e.Project.DeploymentConfigurations.Add(
                    "Upgrade", deploymentSteps, retractionSteps);
                configuration.Description = "This is the upgrade deployment configuration";
            }
        }
    }
    

إنشاء الأوامر SharePoint المخصصة

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

إلى تعريف أوامر SharePoint

  1. SharePointCommands بالمشروع مزدوج-صواب ملف التعليمات البرمجية أوامر.

  2. قم بلصق التعليمات البرمجية التالية في "المفكرة":

    Imports System
    Imports System.IO
    Imports Microsoft.SharePoint
    Imports Microsoft.SharePoint.Administration
    Imports Microsoft.VisualStudio.SharePoint.Commands
    
    Namespace Contoso.DeploymentSteps.Upgrade
    
        Friend Class Commands
    
            ' Determines whether the specified solution has been deployed to the local SharePoint server.
            <SharePointCommand("Contoso.Commands.IsSolutionDeployed")> _
            Private Function IsSolutionDeployed(ByVal context As ISharePointCommandContext, ByVal solutionName As String) As Boolean
                Dim solution As SPSolution = SPFarm.Local.Solutions(solutionName)
                Return solution IsNot Nothing
            End Function
    
            ' Upgrades the specified solution to the local SharePoint server.
            <SharePointCommand("Contoso.Commands.UpgradeSolution")> _
            Private Sub UpgradeSolution(ByVal context As ISharePointCommandContext, ByVal fullWspPath As String)
                Dim solution As SPSolution = SPFarm.Local.Solutions(Path.GetFileName(fullWspPath))
                If solution Is Nothing Then
                    Throw New InvalidOperationException("The solution has not been deployed.")
                End If
                solution.Upgrade(fullWspPath)
            End Sub
    
        End Class
    End Namespace
    
    using System;
    using System.IO;
    using Microsoft.SharePoint;
    using Microsoft.SharePoint.Administration;
    using Microsoft.VisualStudio.SharePoint.Commands;
    
    namespace Contoso.DeploymentSteps.Upgrade
    {
        internal class Commands
        {
            // Determines whether the specified solution has been deployed to the local SharePoint server.
            [SharePointCommand("Contoso.Commands.IsSolutionDeployed")]
            private bool IsSolutionDeployed(ISharePointCommandContext context, string solutionName)
            {
                SPSolution solution = SPFarm.Local.Solutions[solutionName];
                return solution != null;
            }
    
            // Upgrades the specified solution to the local SharePoint server.
            [SharePointCommand("Contoso.Commands.UpgradeSolution")]
            private void UpgradeSolution(ISharePointCommandContext context, string fullWspPath)
            {
                SPSolution solution = SPFarm.Local.Solutions[Path.GetFileName(fullWspPath)];
    
                if (solution == null)
                {
                    throw new Exception("The solution has not been deployed.");
                }
    
                solution.Upgrade(fullWspPath);
            }
        }
    }
    

Checkpoint (نقطة التحقق)

عند هذه النقطة في معاينة, الكل تعليمات برمجية لـ خطوة توزيع مخصصة والأوامر SharePoint موجودة الآن في المشاريع. بنية الحل للتأكد من أن كلا المشروعين ترجمة دون أخطاء.

لإنشاء الحل.

  • من القائمة Build (بناء)، انقر فوق Build Solution (بناء الحل).

إنشاء حزمة VSIX إلى النشر في الملحق

إلى توزيع الملحق ، استخدم المشروع VSIX في الحل إلى إنشاء حزمة VSIX. أولاً، قم بتكوين حزمة VSIX عن طريق تعديل الملف المصدر.ملحق.vsixmanifest المتضمن في المشروع VSIX. قم بعد ذلك إنشاء الحزمة VSIX بواسطة إنشاء الحل.

تكوين حزمة VSIX وإنشاء

  1. مستكشف الحلول ، ضمن المشروع UpgradeDeploymentStep انقر نقراً مزدوجاً فوق صواب. extension.vsixmanifest الملف .

    ‏‫Visual Studio يفتح الملف في محرر ملف البيان. يعتبر ملف المصدر.ملحق.vsixmanifest الأساس لملف ملحق.vsixmanifest مطلوب من قبل الكل حزم VSIX. للحصول على مزيد من المعلومات حول هذا الموضوع، انظر المقالةمخطط VSX للحصول على ملحقات.

  2. في المربع المنتج الاسم، اكتب صواب نشر الخطوة لمشاريع SharePoint .

  3. في المربع الكاتب نوع شركة النصر.

  4. في المربع الوصف، اكتب يوفر مخصص صواب الخطوة النشر التي يمكن استخدامها في المشاريع SharePoint .

  5. في المقطع المحتوى من محرر "" ، انقر فوق الزر إضافة المحتوى.

  6. في إضافة محتوى مربع حوار في تحديد نوع محتوى مربع قائمة، تحديد MEF مكوّنات.

    ملاحظة

    يتوافق مع هذه القيمة إلى MefComponentالعنصر في ملف ملحق.vsixmanifest. تحديد هذا العنصر اسم التجميع ملحق في حزمة VSIX. لمزيد من المعلومات، راجع عنصر MEFComponent (VSX مخطط).

  7. ضمن تحديد مصدر، انقر فوق زر الخيار Project ثم حدد DeploymentStepExtension في صواب المجاورة له.

  8. انقر فوق موافق.

  9. في محرر بيان انقر فوق إضافة محتوى صواب مرة أخرى.

  10. في إضافة محتوى مربع الحوار في حدد نوع محتوى صواب ، حدد نوع ملحق مخصص.

    ملاحظة

    يتوافق مع هذه القيمة إلى CustomExtensionالعنصر في ملف ملحق.vsixmanifest. تحديد هذا العنصر ملحق مخصص التي تريد تضمينها في ملحق ‏‫Visual Studio. لمزيد من المعلومات، راجع عنصر CustomExtension (VSX مخطط).

  11. في مربع النص اكتب ، اكتب SharePoint.صواب.v4.

    ملاحظة

    يتوافق مع هذه القيمة صواب Type سمة CustomExtension العنصر في الملف extension.vsixmanifest. قيمة Sharepoint.Commands.v4 مطلوبة من أجل كافة التجميعات الملحق المخصص التي تحتوي على SharePoint مخصصة الأوامر.

  12. ضمن تحديد مصدر، انقر فوق زر الخيار Project ثم حدد SharePointCommands في صواب المربع إلى جانب.

  13. انقر فوق موافق.

  14. من القائمة Build (إنشاء)، انقر فوق Build Solution (إنشاء الحل). تأكد من أن الحل برمجيًا دون أخطاء.

  15. فتح مجلد الإخراج بناء المشروع UpgradeDeploymentStep. تأكد من أن يحتوي هذا المجلد الآن ملف UpgradeDeploymentStep.vsix.

    مجلد إخراج بناء بشكل افتراضي المجلد \bin\يصحح ضمن المجلد الذي يحتوي على ملف المشروع.

التحضير اختبار الخطوة توزيع الترقية

لاختبار خطوة توزيع الترقية يجب أولاً نشر حل نموذج إلى موقع SharePoint. ابدأ تصحيح الأخطاء الملحق في نسخة تجريبية من ‏‫Visual Studio. ثم إنشاء تعريف قائمة مثيل قائمة لاستخدام لاختبار خطوة توزيع وقم ثم نشرها إلى موقع SharePoint. بعد ذلك، قم بتعديل تعريف قائمة و مثيل قائمة ثم إعادة الانتشار أن يشاهدها كيفية عملية التوزيع الافتراضي إلى الكتابة فوق حلول على موقع SharePoint.

لاحقًا في هذه معاينة التي سيتم تعريف قائمة و مثيل قائمة وتعديلها ثم الترقية على موقع SharePoint.

إلى يبدأ التصحيح الملحق

  1. إعادة تشغيل ‏‫Visual Studio مع امتيازات المسؤول "و" فتح الحل UpgradeDeploymentStep.

  2. في مشروع DeploymentStepExtension فتح ملف التعليمات البرمجية UpgradeStep وإضافة نقطة توقف صواب السطر الأول من التعليمات البرمجية في CanExecute و Execute أساليب.

  3. F5 اضغط إلى بدء التصحيح.

  4. تثبيت الملحق %UserProfile%\AppData\Local\Microsoft\VisualStudio\10.0Exp\Extensions\Contoso\ترقية "الخطوة توزيع" لـ SharePoint مشاريع\1.0 ‏‫Visual Studio ثم يقوم بتشغيل مثيل التجريبي من برنامج ‏‫Visual Studio. سيتم اختبار الخطوة الترقية توزيع في هذا المثيل من ‏‫Visual Studio.

إلى إنشاء تعريف قائمة مثيل قائمة

  1. في تجريبية مثيل من ‏‫Visual Studio القائمة ملف، أشر إلى جديد، ثم انقر فوق مشروع.

  2. في مشروع جديد صواب ، قم بتوسيع Visual C#‎ SharePointتوسيع ثم انقر فوق 2010 .

  3. في مربع التحرير والسرد في أعلى مربع الحوار ، حدد .NET Framework 3.5 أو .NET Framework 4 . المشاريع عن Microsoft SharePoint Foundation 2010 وأجهزة Microsoft SharePoint Server 2010 يتطلب هذا الإصدار من إطار عمل .NET.

  4. في قائمة قوالب المشروع صواب تعريف قائمة.

  5. في المربع الاسم، اكتب X-UA-Compatible.

  6. انقر فوق موافق.

  7. في معالج تخصيص SharePoint ، صواب محدد موقع المعلومات للموقع الذي تريد استخدامه للتصحيح.

  8. تحت ما هو مستوى الثقة هذا صوابSharePoint ،انقر نشر كـ صواب التي تستخدم خط الهاتف مزرعة .

    ملاحظة

    لا يعتمد خطوة توزيع الترقية حلول sandboxed.

  9. انقر فوق Next.

  10. في الصفحة إعدادات تعريف قائمة اختيار "، ضمن ما هو العرض صواب من تعريف قائمة ؟، نوع قائمة الموظفين.

  11. تحت ما صواب من تعريف قائمة ؟، جهات حدد .

  12. تأكد من أن صواب مثيل قائمة هذا تعريف قائمة تحديد خانة الاختيار .

  13. انقر فوق Finish.

    ‏‫Visual Studio بإنشاء المشروع وتفتح ملف عناصر.xml تعريف القائمة في المحرر.

  14. في الحل مستكشف, يمين-انقر the EmployeesListDefinition مشروع عقدة و انقر خصائص.

  15. تشغيل the SharePoint علامة تبويب of the مشروع خصائص, مسح the تلقائي-retract بعد تصحيح الأخطاء فحص صندوق.

  16. في مستكشف صواب ، قم بتوسيع العقدة ListDefinition1 ثم قم بتوسيع العقدة ListInstance1 التابعة.

  17. مزدوج-صواب وهو الملف Elements.xml تابعة للعقدة ListInstance1. يتم فتح الملف عناصر.xml في المحرر.

  18. استبدال XML في هذا الملف الافتراضي مع XML التالي. يتغير هذا XML صواب القائمة الموظفين. كما يضيف العنصر لموظف يسمى Hance محمود.

    <?xml version="1.0" encoding="utf-8"?>
    <Elements xmlns="https://schemas.microsoft.com/sharepoint/">
      <ListInstance Title="Employees"
                    OnQuickLaunch="TRUE"
                    TemplateType="10000"
                    Url="Lists/Employees"
                    Description="Simple list to test upgrade deployment step">
        <Data>
          <Rows>
            <Row>
              <Field Name="Title">Hance</Field>
              <Field Name="FirstName">Jim</Field>
              <Field Name="Company">Contoso</Field>
            </Row>
          </Rows>
        </Data>
      </ListInstance>
    </Elements>
    

إلى إنشاء تعريف قائمة مثيل قائمة

  1. في مستكشف صواب ، انقر فوق عقدة المشروع SharePointCommands.

  2. في الإطار الخصائص، تأكد من أن تكوين نشر Active صواب تعيين افتراضي.

  3. اضغط المفتاح F5.

  4. تحقق من أن المشروع بإنشاء بنجاح، فتح موقع SharePoint صواب القائمة الموظفين جديدة، ثم تتضمن القائمة إدخال لـ Hance محمود.

  5. قم بغلق مستعرض الويب.

إلى تعديل تعريف قائمة مثيل قائمة ثم إعادة تشغيلها

  1. في مشروع EmployeesListDefinition مزدوج-صواب وهو الملف Elements.xml تابعة عنصر المشروع ListInstance1.

  2. إزالة Data عنصر و توابعه صواب إزالة الإدخال الخاص Hance محمود من قائمة. عند الانتهاء، يجب أن يحتوي الملف على XML التالي.

    <?xml version="1.0" encoding="utf-8"?>
    <Elements xmlns="https://schemas.microsoft.com/sharepoint/">
      <ListInstance Title="Employees"
                    OnQuickLaunch="TRUE"
                    TemplateType="10000"
                    Url="Lists/Employees"
                    Description="Simple list to test upgrade deployment step">
      </ListInstance>
    </Elements>
    
  3. مزدوج-صواب وهو الملف Schema.xml تابعة عنصر المشروع ListDefinition1.

  4. البحث في هذا الملف للحصول على سلسلة BaseViewID="1". هذه السلسلة صواب View العنصر الذي سيتم تعديله في الخطوات التالية.

  5. ضمن هذا View عنصر صواب التابع ViewFields العنصر.

  6. ضمن ViewFields عنصر ، التابعة إزالة الاثنين FieldRef Name السمة مجموعة صواب Attachments و HomePhone. هذا الإجراء إلى إزالة هذه الحقول صواب طريقة العرض الافتراضية لقائمة الموظفين على موقع SharePoint. عندما تقوم الانتهاء, ViewFields صواب يجب أن يكون لدى محتويات التالية.

    <ViewFields>
      <FieldRef Name="LinkTitle" />
      <FieldRef Name="FirstName" />
      <FieldRef Name="Company" />
      <FieldRef Name="WorkPhone" />
      <FieldRef Name="Email" />
    </ViewFields>
    
  7. اضغط المفتاح F5. تحقق من ظهور مربع الحوار صواب التعارضات. يظهر مربع حوار هذا عند محاولة ‏‫Visual Studio لنشر حل (مثيل القائمة) إلى موقع SharePoint بالفعل ذلك يتم نشر الحل.

    لاحقًا في هذه معاينة ستلاحظ لا يظهر مربع حوار هذا عندما تقوم بينفذ خطوة توزيع الترقية.

  8. صواب حل تلقائياً. صواب حذف مثيل قائمة على موقع SharePoint بنشر عنصر القائمة في المشروع ثم ويفتح موقع SharePoint إلى القائمة الموظفين.

  9. تحقق من التفاصيل التالية:

    • مرفقات و هاتف المنزل صواب لا تظهر في طريقة العرض هذه القائمة.

    • القائمة فارغ الآن. عند استخدام افتراضي النشر التكوين صواب إعادة الانتشار الحل, تم استبدال القائمة الموظفين مع قائمة فارغة جديدة في المشروع.

اختبار الجديدة توزيع الخطوة.

أنت الآن جاهز لاختبار خطوة توزيع الترقية. أولاً، قم بإضافة العنصر إلى مثيل "قائمة" في SharePoint. ثم تغيير تعريف قائمة مثيل قائمة وقم ثم الترقية على موقع SharePoint ليؤكّد أن الخطوة توزيع الترقية لا يؤدي إلى الكتابة فوق الجديدة العنصر.

إضافة عنصر إلى القائمة المسموح بها

  1. في الشريط على موقع SharePoint، صواب التبويب عناصر.

  2. في المجموعة جديد صواب عنصر جديد.

  3. في الأخير صواب الحقل ، اكتب Ruth.

  4. في الحقل الاسم الأول صواب Andy.

  5. في الحقل الشركة اكتب الأصدقاء.

  6. انقر فوق حفظ. تحقق من ظهور العنصر الجديد في القائمة. سيتم استخدام هذا العنصر لاحقًا في هذه معاينة للتحقق من أن الخطوة توزيع الترقية لا يؤدي إلى الكتابة فوق محتويات هذه القائمة.

  7. قم بغلق مستعرض الويب.

التحضير اختبار الخطوة توزيع الترقية

  1. في نسخة تجريبية من صواب ، مستكشف الحلول، انقر فوق عقدة المشروع EmployeesListDefinition.

  2. في الإطار الخصائص، تعيين الخاصية تكوين نشر Active صواب الترقية. هذا هو التكوين توزيع مخصصة تتضمن الخطوة توزيع ترقية جديدة.

  3. مزدوج-صواب وهو الملف Schema.xml تابعة عنصر المشروع ListDefinition1.

  4. حدد موقع ViewFields عنصر تعديل إصدار سابق.

  5. ضمن ViewFields عنصر ، التابعة إزالة الاثنين FieldRef Name السمة مجموعة صواب WorkPhone و Email. هذا الإجراء إلى إزالة هذه الحقول صواب طريقة العرض الافتراضية لقائمة الموظفين على موقع SharePoint. عندما تقوم الانتهاء, ViewFields صواب يجب أن يكون لدى محتويات التالية.

    <ViewFields>
      <FieldRef Name="LinkTitle" />
      <FieldRef Name="FirstName" />
      <FieldRef Name="Company" />
    </ViewFields>
    
  6. اضغط المفتاح F5. تحقق من تعليمات برمجية الموجودة في أخرى يتوقف المثيل ‏‫Visual Studio تشغيل نقاط الإيقاف المعينة مسبقًا في CanExecuteالأسلوب.

  7. صواب F5 مرة أخرى. تحقق من إيقاف التعليمة البرمجية على نقطة الإيقاف تلك التي تقوم بتعيينها في Execute الأسلوب.

  8. اضغط F5 وقت نهائية. موقع SharePoint صواب القائمة الموظفين.

  9. في ناحية "التشغيل السريع" ، انقر فوق الموظفين صواب.

  10. تحقق من التفاصيل التالية:

    • عنصر Andy Ruth يدوياً أضفتها مسبقًا لا تزال في صواب.

    • هاتف العمل والأعمدة عنوان البريد الإلكتروني غير المعروضة في طريقة عرض صواب.

    تعديل تكوين نشر صواب الموظفين قائمة المثيل الموجود على موقع SharePoint. إذا استخدمت افتراضي النشر التكوين بدلاً من التكوين صواب قد تواجه تعارض نشر. صواب هل حل التعارض وذلك عن طريق استبدال القائمة الموظفين و هل يمكن حذف العنصر Andy Ruth.

تنظيف "الكمبيوتر تطوير"

بعد الانتهاء من الخطوة توزيع الترقية اختبار إزالة مثيل قائمة وتعريف قائمة من موقع SharePoint وإزالة ملحق خطوة توزيع من ‏‫Visual Studio.

إلى إزالة مثيل قائمة من موقع SharePoint

  1. فتح القائمة الموظفين على SharePoint صواب إذا لم يكن مفتوحاً بالفعل.

  2. في الشريط على موقع SharePoint، صواب التبويب عناصر.

  3. تشغيل انقر فوق علامة التبويب قائمة ، في المجموعة إعدادات إعدادات القائمة.

  4. ضمن الأذونات والإدارة، انقر فوق يحذف هذه القائمة. انقر فوق ‏‏موافق ليؤكّد أنك تريد يرسل القائمة إلى سلة المحذوفات.

  5. قم بغلق مستعرض الويب.

إلى إزالة مثيل قائمة من موقع SharePoint

  • في نسخة تجريبية من صواب ، حدد Retract القائمة بنية ،.

    retracts ‏‫Visual Studio تعريف قائمة من موقع SharePoint.

إلى أزاله التثبيت الملحق

  1. في نسخة تجريبية من ‏‫Visual Studio على القائمة أدوات، انقر فوق ملحق إدارة.

    فتح مربع حوار ملحق إدارة.

  2. في القائمة ملحقات، صواب الخطوة نشر لمشاريع SharePoint، ثم صواب إلغاء التثبيت.

  3. في مربع حوار الذي يظهر، انقر فوق نعم إلى يؤكّد أنك تريد إلى تثبيت الملحق.

  4. انقر فوق إعادة التشغيل الآن إلى إكمال إلغاء التثبيت.

  5. يغلق مثيلي ‏‫Visual Studio (مثيل تجريبية و مثيل ‏‫Visual Studio لدى فتح الحل UpgradeDeploymentStep).

راجع أيضًا:

موارد أخرى

التحزيم SharePoint extending والتوزيع