2010-08-05 35 views
0

我想從VS2010擴展中發佈Web應用程序。 在微距我用寫:從VS2010擴展中發佈Web應用程序

DTE.Windows.Item(Constants.vsWindowKindSolutionExplorer).Activate() 
DTE.ActiveWindow.Object.GetItem("MyWebApp").Select(vsUISelectionType.vsUISelectionTypeSelect) 
DTE.ExecuteCommand("ClassViewContextMenus.ClassViewProject.Publish") 

,但這似乎並沒有從分機(C#)內工作。

它未能在C#中的第二行,在VBA宏能正常工作...

什麼是開始從VS2010擴展發佈過程中正確的方法是什麼?

回答

0

看來我需要把解決方案的名稱在Web應用程序名稱的前面,所以此代碼的工作:

 var dte = _package.GetServiceOf(typeof(DTE)) as DTE; 

     string solutionName = Path.GetFileNameWithoutExtension(dte.Solution.FullName); 

     dte.Windows.Item(vsWindowKindSolutionExplorer).Activate(); 
     dte.ActiveWindow.Object.GetItem(solutionName + "\\" + webProjectName).Select(vsUISelectionType.vsUISelectionTypeSelect); 
     dte.ExecuteCommand("ClassViewContextMenus.ClassViewProject.Publish"); 

感謝來自晁適暗示在我的崗位http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/2825d129-2f48-44f6-acf8-4038c9fd276d/