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


C# IDocument.String方法代码示例

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


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

示例1: GetRelativePath

 private string GetRelativePath(IDocument document)
 {
     string relativePath = "/";
     if (document.ContainsKey("RelativeFilePath"))
     {
         relativePath += document.String("RelativeFilePath");
     }
     return relativePath;
 }
开发者ID:mgnslndh,项目名称:Wyam,代码行数:9,代码来源:Razor.cs

示例2: GetPath

        protected string GetPath(IDocument input, IExecutionContext context)
        {
            string path = null;

            if (_useWriteMetadata)
            {
                // WritePath
                path = input.String(MetadataKeys.WritePath);
                if (!string.IsNullOrWhiteSpace(path))
                {
                    path = PathHelper.NormalizePath(path);
                }

                // WriteFileName
                if (string.IsNullOrWhiteSpace(path) && input.ContainsKey(MetadataKeys.WriteFileName)
                    && input.ContainsKey(MetadataKeys.RelativeFileDir))
                {
                    path = Path.Combine(input.String(MetadataKeys.RelativeFileDir),
                        PathHelper.NormalizePath(input.String(MetadataKeys.WriteFileName)));
                }

                // WriteExtension
                if (string.IsNullOrWhiteSpace(path) && input.ContainsKey(MetadataKeys.WriteExtension)
                    && input.ContainsKey(MetadataKeys.RelativeFilePath))
                {
                    path = Path.ChangeExtension(input.String(MetadataKeys.RelativeFilePath),
                        input.String(MetadataKeys.WriteExtension));
                }
            }

            // Func
            if (string.IsNullOrWhiteSpace(path))
            {
                path = _path.Invoke<string>(input, context);
            }

            if (!string.IsNullOrWhiteSpace(path))
            {
                path = Path.GetFullPath(Path.Combine(context.OutputFolder, path));
                if (!string.IsNullOrWhiteSpace(path))
                {
                    return path;
                }
            }

            return null;
        }
开发者ID:st1pps,项目名称:Wyam,代码行数:47,代码来源:WriteFiles.cs

示例3: GetPath

        protected string GetPath(IDocument input, IExecutionContext context)
        {
            string path = null;

            if (_useWriteMetadata)
            {
                string metadataKey = null;

                // WritePath
                path = input.String(Keys.WritePath);
                if (!string.IsNullOrWhiteSpace(path))
                {
                    metadataKey = Keys.WritePath;
                    path = PathHelper.NormalizePath(path);
                }

                // WriteFileName
                if (string.IsNullOrWhiteSpace(path) && input.ContainsKey(Keys.WriteFileName)
                    && input.ContainsKey(Keys.RelativeFileDir))
                {
                    metadataKey = Keys.WriteFileName;
                    path = Path.Combine(input.String(Keys.RelativeFileDir),
                        PathHelper.NormalizePath(input.String(Keys.WriteFileName)));
                }

                // WriteExtension
                if (string.IsNullOrWhiteSpace(path) && input.ContainsKey(Keys.WriteExtension)
                    && input.ContainsKey(Keys.RelativeFilePath))
                {
                    metadataKey = Keys.WriteExtension;
                    path = Path.ChangeExtension(input.String(Keys.RelativeFilePath),
                        input.String(Keys.WriteExtension));
                }

                // Warn if needed
                if (metadataKey != null && _warnOnWriteMetadata)
                {
                    context.Trace.Warning("An extension or delegate was specified for the WriteFiles module, but the metadata key {0} took precedence for the document with source {1}."
                        + " Call UseWriteMetadata(false) to prevent the special write metadata keys from overriding WriteFiles constructor values.",
                        metadataKey, input.Source);
                }
            }

            // Func
            if (string.IsNullOrWhiteSpace(path))
            {
                path = _path.Invoke<string>(input, context);
            }

            if (!string.IsNullOrWhiteSpace(path))
            {
                path = Path.GetFullPath(Path.Combine(context.OutputFolder, path));
                if (!string.IsNullOrWhiteSpace(path))
                {
                    return path;
                }
            }

            return null;
        }
开发者ID:Chandu,项目名称:Wyam,代码行数:60,代码来源:WriteFiles.cs

示例4: GetOutputPath

        protected FilePath GetOutputPath(IDocument input, IExecutionContext context)
        {
            FilePath path = null;

            if (_useWriteMetadata)
            {
                string metadataKey = null;

                // WritePath
                path = input.FilePath(Keys.WritePath);
                if (path != null)
                {
                    metadataKey = Keys.WritePath;
                }

                // WriteFileName
                DirectoryPath relativeFileDir = input.DirectoryPath(Keys.RelativeFileDir);
                FilePath writeFileName = input.FilePath(Keys.WriteFileName);
                if (path == null 
                    && relativeFileDir != null
                    && writeFileName != null)
                {
                    metadataKey = Keys.WriteFileName;
                    path = relativeFileDir.CombineFile(writeFileName);
                }

                // WriteExtension
                FilePath relativeFilePath = input.FilePath(Keys.RelativeFilePath);
                string writeExtension = input.String(Keys.WriteExtension);
                if (path == null 
                    && relativeFilePath != null
                    && !string.IsNullOrWhiteSpace(writeExtension))
                {
                    metadataKey = Keys.WriteExtension;
                    path = relativeFilePath.ChangeExtension(writeExtension);
                }

                // Warn if needed
                if (metadataKey != null && _warnOnWriteMetadata)
                {
                    Trace.Warning($"An extension or delegate was specified for the WriteFiles module, but the metadata key {metadataKey} took precedence for the document with source {input.SourceString()}"
                        + $" resulting in an output path of {path}. Call UseWriteMetadata(false) to prevent the special write metadata keys from overriding WriteFiles constructor values.");
                }
            }

            // Fallback to the default behavior function
            return path ?? _path.Invoke<FilePath>(input, context);
        }
开发者ID:ibebbs,项目名称:Wyam,代码行数:48,代码来源:WriteFiles.cs


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