示例#1
0
        void Init()
        {
            try
            {
                string workstation_class_asm_ref   = "Microsoft.TeamFoundation.VersionControl.Client.Workstation, Microsoft.TeamFoundation.VersionControl.Client, Version={0}.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL";
                string workspaceinfo_class_asm_ref = "Microsoft.TeamFoundation.VersionControl.Client.WorkspaceInfo, Microsoft.TeamFoundation.VersionControl.Client, Version={0}.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL";
                int    dte_major_version           = PackageGlobals.Instance().DTEMajorVersion;

                System.Type workstation_class = System.Type.GetType(string.Format(workstation_class_asm_ref, PackageGlobals.Instance().DTEMajorVersion));
                if (workstation_class != null)
                {
                    m_PICurrent = workstation_class.GetProperty("Current", BindingFlags.Static | BindingFlags.Public);
                    if (m_PICurrent != null)
                    {
                        m_MIGetLocalWorkspaceInfo = workstation_class.GetMethod("GetLocalWorkspaceInfo", new System.Type[] { typeof(string) });
                        if (m_MIGetLocalWorkspaceInfo != null)
                        {
                            System.Type workspaceinfo_class = System.Type.GetType(string.Format(workspaceinfo_class_asm_ref, PackageGlobals.Instance().DTEMajorVersion));
                            if (workspaceinfo_class != null)
                            {
                                m_PIName      = workspaceinfo_class.GetProperty("Name");
                                m_PIOwnerName = workspaceinfo_class.GetProperty("OwnerName");
                            }
                        }
                    }
                }
            }
            catch (System.Exception ex)
            {
                Debug.WriteLine(ex.ToString());
            }
        }
示例#2
0
        public override Value Evaluate(IEvalContext ctx)
        {
            string path  = SubExpressions[0].Evaluate(ctx).ToString();
            string owner = "";

            if (path.Length > 0)
            {
                PackageGlobals.InvokeOnUIThread(delegate()
                {
                    owner = WorkspaceInfoGetter.Instance().GetOwner(path);
                });
            }

            return(new StringValue(owner));
        }