2016-10-03 2 views
1

나는이 nuget 패키지 (및 비 확장 한)있어 : https://www.nuget.org/packages/Microsoft.TeamFoundationServer.ExtendedClient/Microsoft.TeamFoundation.VersionControl.Client 위치?

내가 Microsoft.TeamFoundation.VersionControl.Client.dll를 대체에 대한 참조를보고 있어요. 불행히도 Microsoft.TeamFoundation.VersionControl 네임 스페이스에 액세스하려고 시도했지만 존재하지 않는 것 같습니다. 힘내 및 소스 컨트롤에 대한 항목이 있지만 VersionControl에서 "형식 또는 네임 스페이스 이름 'VersionControl'이 'Microsoft.TeamFoundation'네임 스페이스에 없습니다 (어셈블리 참조가 누락 되었습니까?)"및 Intellisense가 아무것도 제안하지 않습니다. VersionControlServer에 관한 문 사용하기 등등.

나의 의도는 액세스 토큰과 함께 TFVC를 사용하여 자동화 서버가 작업 공간을 당겨서 일부 파일을 조작하고 새로운 작업 공간에 업로드하도록하는 것입니다. 나는 논리의 나머지 부분을 작성하고 썼지 만, "빠진"참조는 단지 문제를 야기하고있다.

어디로 갔을 지에 대한 문서가 실제로 표시되지 않습니다. 어떤 아이디어?

+0

코드를 공유 할 수 있습니까? –

답변

0

는 프레디 Treboux의 제안에 따라 새 프로젝트를 테스트하고 거기했다.

그 시점에서 필자는 모든 TFS 및 VS Services 관련 패키지를 완전히 제거하고 모든 파일이 삭제되었는지 확인한 다음 다시 설치했습니다. 그것을 수정 한 것 같습니다, 모든 참조가 지금 오류없이 철수하고 있습니다.

1

내가 정확하게 당신을 undestood한다면 : 새로운 빈 프로젝트에 nuget 패키지를 다운로드하면됩니다. 네임 스페이스가 있음을 알 수 있습니다. 어쩌면 당신은 당신의 자신의 네임 스페이스를함으로써 네임 스페이스를 미행하는 예를 들어 당신이 아마 가지고있는 것처럼, 당신은 참조하려는 하나의 일부를 포함 : 당신이 당신의 네임 스페이스 이름을 변경해야합니다

namespace My.Microsoft.TeamFoundation.VersionControl 
{ 
    // ... your code ... 
} 

하는 경우, 또는 사용 "global ::"(https://msdn.microsoft.com/en-us/library/c3ay4x3d.aspx)입니다.

+0

방금 ​​두 번 확인했는데 내 코드에서 일치하는 네임 스페이스가 보이지 않지만 잠재적으로 내 참조에서 충돌을 일으킬 수 있습니다. 내일 새 프로젝트와 글로벌 옵션을 시험해 보겠습니다. – user1874135

1

Microsoft.TeamFoundation.VersionControl.Client 네임 스페이스에 있습니다. 나는이 nuget 패키지가 설치되어 :

Microsoft.TeamFoundationServer.Client 
Microsoft.TeamFoundationServer.ExtendedClient 

모두는 VersionControlServer는 Microsoft.TeamFoundation에 Microsoft.TeamFoundation.VersionControl 네임 스페이스가 없다 14.102.0

1

이도하지 버전 관리 클래스가 있습니다 버전. VersionControl.Client 네임 스페이스입니다.

간단한 샘플 작업 공간을 생성하고 파일을 추가하고 체크인 :

NetworkCredential cred = new NetworkCredential("[account name]", "[person access token]"); 
      TfsTeamProjectCollection tpc = new TfsTeamProjectCollection(new Uri("https://[xxx].visualstudio.com"), cred); 
      tpc.EnsureAuthenticated(); 
      VersionControlServer versionControl = tpc.GetService<VersionControlServer>(); 
Workspace workspace = versionControl.CreateWorkspace("TestWorkspace", versionControl.AuthorizedUser); 
try 
      { 
       String localDir = @"c:\temp\BasicSccExample"; 
       //Console.WriteLine("\r\n--- Create a mapping: {0} -> {1}", args[1], localDir); 
       workspace.Map("$/Agile2015/APIFolder", localDir); 


       workspace.Get(); 

       Console.WriteLine("\r\n--- Create a file."); 
       topDir = Path.Combine(workspace.Folders[0].LocalItem, "sub"); 
       Directory.CreateDirectory(topDir); 
       String fileName = Path.Combine(topDir, "basic.txt"); 
       using (StreamWriter sw = new StreamWriter(fileName)) 
       { 
        sw.WriteLine("revision 1 of basic.txt"); 
       } 

       Console.WriteLine("\r\n--- Now add everything.\r\n"); 
       workspace.PendAdd(topDir, true); 

       Console.WriteLine("\r\n--- Show our pending changes.\r\n"); 
       PendingChange[] pendingChanges = workspace.GetPendingChanges(); 
       Console.WriteLine(" Your current pending changes:"); 
       foreach (PendingChange pendingChange in pendingChanges) 
       { 
        Console.WriteLine(" path: " + pendingChange.LocalItem + 
             ", change: " + PendingChange.GetLocalizedStringForChangeType(pendingChange.ChangeType)); 
       } 

       Console.WriteLine("\r\n--- Checkin the items we added.\r\n"); 
       int changesetNumber = workspace.CheckIn(pendingChanges, "Sample changes"); 
       } 
+0

Microsoft.TeamFoundation.VersionControl.Client에 액세스 할 수 없습니다. Microsoft.TeamFoundation.VersionControl에 액세스 할 수 없기 때문에 - My using 문은 클라이언트 용이지만 throw되는 오류는 VersionControl이 네임 스페이스에 존재하지 않는다는 것입니다. Microsoft.TeamFoundation, 따라서 질문에 표현. 감사합니다. 나머지 설정은 바로 잡았습니다.) – user1874135

+0

@ user1874135 Microsoft.TeamFoundationServer.ExtendedClient 패키지를 설치 한 후 참조를 클릭하여 참조를 확장 한 다음 Microsoft.TeamFoundation.VersionControl이 있는지 확인하십시오.클라이언트 참조가 아니라면 ExtendedClient 패키지를 재설치하거나 새 응용 프로그램을 작성하여 해당 패키지를 설치하십시오. –