問題背景:角色轉換錯誤
我檢查的文件VS 2012 TFS編程並開發了下面的代碼來篩選基於一個特定的文件名未決的改變:
internal int CheckinTfsQaItem(IVersionControlItem tfsItem)
{
//Get the current workspace info.
var workspaceInfo = Workstation.Current.GetLocalWorkspaceInfo(_checkedoutTfsItem.VcQaFolder);
//Get the TFS project object from the specified server path.
var server = new TfsTeamProjectCollection(workspaceInfo.ServerUri);
//Get the workspace.
var workspace = workspaceInfo.GetWorkspace(server);
//Filter the pendingChanges object to checkin in only the specified checked out file by it's name.
PendingChange[] pendingChanges = (PendingChange[])workspace.GetPendingChanges().Where(x => x.FileName == tfsItem.Name);
//Check in the change, dont set a comment.
return workspace.CheckIn(pendingChanges, null);
}
問題:
IntelliSense不顯示任何錯誤,但是當我調試,我收到一個轉換異常錯誤w ^試圖將PendingChange單數對象轉換爲PendingChange對象的單個列表,即PendingChanges數組。
這裏是被拋出的錯誤:
結果消息:
試驗方法ADPTestProject.TFStests.Check_Facade_CheckIn_Method拋出異常: System.InvalidCastException:無法轉換類型的對象「WhereArrayIterator`1 [Microsoft.TeamFoundation .VersionControl.Client.PendingChange]'totype'Microsoft.TeamFoundation.VersionControl.Client.PendingChange []'。
有誰能告訴我爲什麼這個劇組失敗了嗎?
謝謝!不能相信我錯過了這一點。它現在完美地工作。當我被允許時,我會將你的答案標記爲正確。 – user1352057