当前位置: 首页>>代码示例>>C#>>正文


C# IItem.GetLogicalPath方法代码示例

本文整理汇总了C#中IItem.GetLogicalPath方法的典型用法代码示例。如果您正苦于以下问题:C# IItem.GetLogicalPath方法的具体用法?C# IItem.GetLogicalPath怎么用?C# IItem.GetLogicalPath使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在IItem的用法示例。


在下文中一共展示了IItem.GetLogicalPath方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: ProcessItem

        private void ProcessItem(IItem item)
        {
            if (IsValidTarget(item))
            {
                var message = string.Empty;

                if (this.Dte.SourceControl.IsItemUnderSCC(item.PhysicalPath))
                {
                    this.Dte.SourceControl.CheckOutItem(item.PhysicalPath);
                }
                else
                {
                    var attributes = File.GetAttributes(item.PhysicalPath);

                    if ((attributes & FileAttributes.ReadOnly) == FileAttributes.ReadOnly)
                    {
                        tracer.Info(
                            Resources.TransformTemplatesCommand_TraceReadOnly, item.GetLogicalPath());

                        return;
                    }
                }

                try
                {
                    message = string.Format(CultureInfo.CurrentCulture,
                            Properties.Resources.TransformTemplatesCommand_TraceSucceded, item.GetLogicalPath(), CustomToolName);

                    var vsProjectItem = item.As<ProjectItem>().Object as VSProjectItem;

                    if (vsProjectItem != null)
                    {
                        vsProjectItem.RunCustomTool();
                    }
                }
                catch (Exception e)
                {
                    message = string.Format(CultureInfo.CurrentCulture,
                                Properties.Resources.TransformTemplatesCommand_TraceError, item.GetLogicalPath(), e.Message);
                }

                tracer.Info(message);
                this.StatusBar.DisplayMessage(message);
            }
        }
开发者ID:NuPattern,项目名称:NuPattern,代码行数:45,代码来源:TransformTemplatesCommand.cs

示例2: GetProjectItemPath

        private string GetProjectItemPath(IItem item, IProject project)
        {
            var path = string.Empty;
            var projectPath = Path.GetDirectoryName(project.PhysicalPath);
            var itemPath = item.PhysicalPath;

            // Is the item contained in the project?
            if (itemPath.StartsWith(projectPath))
            {
                path = itemPath.Substring(projectPath.Length);
            }
            else
            {
                // The item must be linked in from outside the project
                var projectLogicalPath = project.GetLogicalPath();
                var itemLogicalPath = item.GetLogicalPath();
                path = (itemLogicalPath.Substring(projectLogicalPath.Length));
            }

            return path.Replace('\\', '/').TrimStart('/');
        }
开发者ID:StevenVanDijk,项目名称:NuPattern,代码行数:21,代码来源:ResourcePack.cs


注:本文中的IItem.GetLogicalPath方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。