2012-09-13 8 views
2

SharePoint 2010 사이트에서 실행중인 서비스 응용 프로그램 목록을 표시하기 위해 콘솔 응용 프로그램을 작성하려고합니다. 나는 Microsoft.SharePoint뿐만 아니라 Microsoft.SharePoint를 사용했다. 그러나 지금까지 나는 운이별로 없다. 아래는 내가 주변을 둘러 보았던 것입니다. 누구든지 SPServiceApplicationCollection을 올바르게 사용하는 방법에 대한 조언을 나에게 줄 수 있습니까?SPServiceApplicationCollection을 올바르게 사용하는 방법?

미리 감사드립니다.

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.ComponentModel; 
using System.ServiceProcess; 
using Microsoft.SharePoint; 
using Microsoft.SharePoint.Administration; 

namespace ConsoleApplication1 
{ 
class Program 
{ 
    static void Main(string[] args) 
    { 

     SPServiceApplicationCollection services = new  SPServiceApplicationCollection(String, SPFarm.Local.Services); 
     foreach (SPServiceApplication service in services) 
     { 
      Console.WriteLine(service.Name); 

      if (service is SPWebService) 
      { 
       SPWebService webService = (SPWebService)service; 

       foreach (SPWebApplication webApp in webService.WebApplications) 
       { 
        Console.WriteLine(webApp.Name); 
        Console.ReadLine(); 
       } 

      } 

     } 
    } 
} 
} 

편집 뒷조사 후/주위에 물어 내가 원하는 걸의 대략적인 해결책을했다./뒷조사 후

using System; 
    using System.Collections.Generic; 
    using System.Linq; 
    using System.Text; 
    using System.ComponentModel; 
    using System.ServiceProcess; 
    using Microsoft.SharePoint; 
    using Microsoft.SharePoint.Administration; 
    using Microsoft.SharePoint.Administration.Health; 

    namespace ConsoleApplication1 
    { 
    class Program 
    { 
    static void Main(string[] args) 
    { 
     var solution = SPFarm.Local.Solutions["Your Service Application Name.wsp"]; 
     string serverName = string.Empty; 
     foreach (SPServer server in solution.DeployedServers) 
     { 
      serverName += server.Name; 
      Console.WriteLine(server.Name); 
     } 

     if (solution != null) 
     { 
      if (solution.Deployed) 
      { 
       Console.WriteLine("{0} is currently deployed on: {1}", solution.Name, serverName); 
       Console.ReadLine(); 
      } 
      else 
      { 
       Console.WriteLine("Error! Solution not deployed!"); 
       Console.ReadLine(); 
      } 
     } 

    } 
} 
} 
+0

업데이트로, 사용하고 싶습니다. 실제로는 SPFarm.Local.Solutions – wjhguitarman

+0

질문에 대한 대답을 찾은 경우, 대답 상자에 그것을 작성하고 수락 답변으로 표시하십시오. – dhirschl

답변

0

주위에 물어 : 향후 참조를 위해 은/이런 종류의 작업을 수행하고자하는 다른 사람이, 내가 배치 된 서버 목록뿐만 아니라 다음을 수행하여 응용 프로그램 이름을 얻을 수있었습니다 나는 내가 원한 해결책을 생각해 냈다. 향후 참조 용으로/이런 일을하고 싶은 다른 사람을 위해 다음을 수행하여 배포 된 서버 목록과 응용 프로그램 이름을 얻을 수있었습니다.

관련 문제