时间:2021-07-01 10:21:17 帮助过:97人阅读
在编程时经常会遇到一些错误,例如,http://msdn.microsoft.com/en-us/library/microsoft.teamfoundation.workitemtracking.client.fieldstatus.aspx 上面所列出的错误,简单的通过描述无法确认真的问题所在,那么你就需要查看server内部是如何实现的。 names
在编程时经常会遇到一些错误,例如,http://msdn.microsoft.com/en-us/library/microsoft.teamfoundation.workitemtracking.client.fieldstatus.aspx 上面所列出的错误,简单的通过描述无法确认真的问题所在,那么你就需要查看server内部是如何实现的。namespaceMicrosoft.TeamFoundation.WorkItemTracking.Client
{
usingMicrosoft.TeamFoundation;
usingMicrosoft.TeamFoundation.Client;
usingMicrosoft.TeamFoundation.Common;
usingMicrosoft.TeamFoundation.WorkItemTracking.Client.DataStore;
usingMicrosoft.TeamFoundation.WorkItemTracking.Proxy;
usingSystem;
usingSystem.Collections;
usingSystem.Collections.Generic;
usingSystem.Globalization;
usingSystem.IO;
usingSystem.Reflection;
usingSystem.Runtime.InteropServices;
usingSystem.Threading;
usingSystem.Xml;
publicsealed
classWorkItem : IRevisionInternal
{
internalconst
intc_revisionHistory = -4;
internalconst
intc_revisionLatest = -3;
internalconst
intc_revisionNull = -1;
internalconst
intc_revisionUpdate = -2;
privateDateTime? m_asof;
privateAttachmentCollection m_attachments;
privateint
m_dataVersion;
privatebool? m_dirty;
privateFieldCollection m_fields;
privateWorkItemFieldData m_fieldsData;
privateint
m_id;
privateint
m_index;
privatebool
m_IsUpdating;
privateLinkCollection m_links;
privateWorkItemLinkData m_linksData;
privateWorkItemCollection m_list;
privateint
m_metadataVersion;
privateOpenState m_openState;
privateMicrosoft.TeamFoundation.WorkItemTracking.Client.Project m_project;
privatebool? m_readonly;
privateRevisionCollection m_revisions;
privateWorkItemStore m_store;
privateint
m_tempId;
privateWorkItemType m_type;
privateWorkItemLinkCollection m_wlinks;
privateWorkItemLinkCollection m_wlinksHistory;
privatestatic
int[] s_areaDependentFieldIds =new
int[] { -12, -42, -43, -44, -45, -46, -47, -48, -49 };
internalstatic
int[] s_internallyCalculatedFieldIds =new
int[] {
-7, -12, -42, -43, -44, -45, -46, -47, -48, -49, -105, -50, -51, -52, -53, -54,
-55, -56
};
privatestatic
int[] s_iterationDependentFieldIds =new
int[] { -50, -51, -52, -53, -54, -55, -56 };
privatestatic
ints_tempId = 0;
publicevent
WorkItemFieldChangeEventHandler FieldChanged;
publicWorkItem(WorkItemType type)
{
this.m_dirty =false;
this.m_readonly =null;
this.m_asof =null;
Microsoft.TeamFoundation.Common.Marker.Process(Microsoft.TeamFoundation.Common.Mark.OMWorkItemNewBegin);
TeamFoundationTrace.Verbose("Entering WorkItem(WorkItemStore store, WorkItemType type)");
if(type ==
null)
{
thrownew
ArgumentNullException("type");
}
this.m_fieldsData =new
WorkItemFieldData(this);
this.m_linksData =new
WorkItemLinkData(this);
this.m_store = type.Store;
this.m_id = 0;
this.m_tempId = Interlocked.Decrement(