التحويل بين أنواع النظام مشروع SharePoint وأنواع أخرى Visual Studio مشروع
في بعض الحالات قد يكون كائن في النظام المشروع SharePoint وكنت ترغب في استخدام ميزات الكائن المناظرة في طراز كائن Automation لـ Visual Studio أو تكامل طراز الكائن, أو العكس بالعكس. في هذه الحالات، يمكنك استخدام Convert<TInput, TOutput>أسلوب الخدمة المشروع SharePoint تحويل الكائن إلى طراز كائن آخر.
على سبيل المثال، قد يكون لديك ISharePointProjectالكائن ولكن تريد إلى استخدام أساليب متوفرة فقط على EnvDTE.Projectأو Microsoft.VisualStudio.Shell.Interop.IVsProjectالكائن. في هذه الحالة، يمكنك استخدام Convert<TInput, TOutput>أسلوب لتحويل ISharePointProjectإلى EnvDTE.Projectأو Microsoft.VisualStudio.Shell.Interop.IVsProject.
للحصول على أكثر راجع معلومات حول طراز كائن Automation لـ Visual Studio طراز الكائن تكامل Visual Studio نظرة عامة حول برنامج Visual Studio وطرازات كائن SharePoint.
أنواع تحويلات
يسرد الجدول التالي أنواع يمكنها تحويل هذا الأسلوب بين النظام المشروع SharePoint من الطرازات الأخرى الكائن Visual Studio.
نوع نظام المشروع لـ SharePoint |
أنواع المقابلة في طرازات كائن التنفيذ التلقائي والتكامل |
---|---|
أو Microsoft.VisualStudio.Shell.Interop.IVsProject(أو أية واجهة مشتقة) أو |
|
أو UInt32القيمة (يسمى أيضاً VSITEMID) التي تعرّف العضو المشروع في Microsoft.VisualStudio.Shell.Interop.IVsHierarchyالذي يحتوي على it. يمكن تمرير هذه القيمة إلى itemidالمعلمة بعض Microsoft.VisualStudio.Shell.Interop.IVsHierarchyأساليب. |
المثال
يوضح مثال التعليمة البرمجية التالي كيفية استخدام Convert<TInput, TOutput>أسلوب لتحويل ISharePointProjectالكائن إلى EnvDTE.Project.
Private Sub projectService_ProjectAdded(ByVal sender As Object, _
ByVal e As Microsoft.VisualStudio.SharePoint.SharePointProjectEventArgs)
Dim dteProject As EnvDTE.Project = e.Project.ProjectService.Convert( _
Of Microsoft.VisualStudio.SharePoint.ISharePointProject, EnvDTE.Project)(e.Project)
If dteProject IsNot Nothing Then
' Use the Visual Studio automation object model to add a folder to the project.
dteProject.ProjectItems.AddFolder("Data")
End If
End Sub
void projectService_ProjectAdded(object sender, Microsoft.VisualStudio.SharePoint.SharePointProjectEventArgs e)
{
EnvDTE.Project dteProject = e.Project.ProjectService.Convert<
Microsoft.VisualStudio.SharePoint.ISharePointProject, EnvDTE.Project>(e.Project);
if (dteProject != null)
{
// Use the Visual Studio automation object model to add a folder to the project.
dteProject.ProjectItems.AddFolder("Data");
}
}
يتطلب هذا المثال:
ملحق النظام مشروع SharePoint الذي يحتوي على مرجع إلى تجميع EnvDTE.dll. لمزيد من المعلومات، راجع توسيع النظام مشروع SharePoint.
تعليمات برمجية التي تسجل projectService_ProjectAddedأسلوب إلى معالجة ProjectAddedالحدث من ISharePointProjectServiceالكائن. للحصول على أكثر معلومات حول استرداد ISharePointProjectServiceالكائن, راجع كيفية القيام بما يلي: استرداد الخدمة مشروع SharePoint.
راجع أيضًا:
المبادئ
باستخدام الخدمة SharePoint مشروع
نظرة عامة حول برنامج Visual Studio وطرازات كائن SharePoint