سؤال

كيف يمكنني الحصول على قائمة للجميع SPIisWebServiceApplicationPool في مزرعتي الحالية؟يوجد أمر بوويرشيل يمكنه القيام بذلك اسمه Get-SPServiceApplicationPool لكني أرغب في الحصول على القائمة في تطبيق C# دون استخدام كائن PowerShell.

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

المحلول

حاول اتباع ما يلي:يمكنك التعديل حسب حاجتك وتسمية أي خدمة تكون موجودة بشكل افتراضي في كل تطبيق ويب.

foreach (SPService service in SPFarm.Local.Services)
{
    if (service.Name.Equals("ServiceName"))
    {
        foreach (SPServiceApplication serviceApp in service.Applications)
        {
            SPIisWebServiceApplication webServiceApp = (SPIisWebServiceApplication) serviceApp;
            SPIisWebServiceApplicationPool appPool = webServiceApp.ApplicationPool;
        }
    }
}

نصائح أخرى

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.DirectoryServices;

namespace AppPoolEnum
{
    class Program
    {
        static void Main(string[] args)
        {
            DirectoryEntries appPools = 
                new DirectoryEntry("IIS://localhost/W3SVC/AppPools").Children;

            foreach (DirectoryEntry appPool in appPools)
            {
                Console.WriteLine(appPool.Name);
            }
        }
    }
}

مصدر: https://stackoverflow.com/questions/1400464/enumerated-application-pools-in-iis

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