原文地址:Create Interactive .NET Documentation with Try .NET
<https://devblogs.microsoft.com/dotnet/creating-interactive-net-documentation/>
原文作者:Maria
译文地址:https://www.cnblogs.com/lwqlun/p/10894497.html
<https://www.cnblogs.com/lwqlun/p/10894497.html>
译者:Lamond Lu

背景


当我们编写开发人员使用的文档时,我们需要捕捉他们的兴趣,并引导他们尽快走上成功的道路。开发人员生态系统一直在为社区提供可交互的文档,用户可以一个地方阅读文档,运行代码并进行编辑。

在过去的2年里,.NET语言团队一直在不断发展Try .NET, 以支持在线和离线的交互式文档。

什么是Try .NET

Try .NET是一个基于.NET Core的交互式文档生成器。



Try .NET 在线版

2017年9月,Try .NET第一次在docs.microsoft.com
<https://docs.microsoft.com/en-us/dotnet/csharp/tutorials/intro-to-csharp/>
中使用,开发人员可以使用Azure Container实例运行代码。然而在过去的5个月内,我们改用Blazor和Web Assembly作为代码执行客户端。

你可以自己访问如下链接
<https://docs.microsoft.com/dotnet/csharp/tutorials/intro-to-csharp/hello-world?tutorial-step=5>
, 并打开开发者工具。在控制台标签页中,你可以看到如下信息WASM:Initialized, 切换到网络标签页,你将看到所有在客户端执行的DLL。



控制台标签页: *WASM Initialized*



网络标签页: DLLs

Try .NET离线版

对我们而言,离线版和在线版一样的重要。针对离线体验,对我们而言,创建一种可以融入内容作者工作流程的体验是非常重要的。

在我们的调查结果中,我们注意到内容开发人员(content developers)在创建开发人员文档时,经常使用2种说明方式

* 一个用户可以下载并运行的实例。
* 一些Markdown文件,其中包含一系列说明,以及从代码库复制黏贴的的代码片段。
Try .NET提供了全局工具dotnet try, 以方便.NET开发人员创建可交互的Markdown文件。

为了使你的Markdown文件具有交互性,你需要安装.NET Core的SDK, 全局工具dotnet try, 以及Visual Studio / VS
Code。



我们该怎么做?

扩展Markdown


在Markown文件中,你会使用隔离代码块来突出显示代码段。在代码块的前后,你会使用```来包裹它们。你可以添加可选的语言标识符,启用针对代码段的语法突出显示。

例:C#的代码块
​``` cs var name ="Rain"; Console.WriteLine($"Hello {name.ToUpper()}!"); ​```
使用Try .NET, 我们可以扩展隔离代码块,给它添加一些额外的参数。
​``` cs --region methods --source-file .\myapp\Program.cs --project
.\myapp\myapp.csproj var name ="Rain"; Console.WriteLine($"Hello
{name.ToUpper()}!"); ​```
这里我们使用了3个参数

* --region参数 - 指定一个C#的分块(region)
* --source-file参数 - 指定程序文件的目录
* --project参数 - 指定项目文件和引用的系统程序集
因此,以上示例中,我们做的事情是,当你运行Try .NET的解析你的Markdown文件的时候,程序会去尝试引用Program.cs文件中名为methods
的分块代码。

使用#regions

在Markdown中,我们扩展了代码块,提供了--region参数,用它可以指定C#代码中的分块(region)。
所以,你的Program.cs文件看起来可能是这样的。
using System; namespace HelloWorld { class Program { static void Main(string[]
args) { #region methods var name ="Rain"
Console.WriteLine($"Hello{name.ToUpper()}!"); #endregion } } }
dotnet try verify

dotnet try verify是一个文档编译器。使用这个命令,你可以确保每个代码块都能正常工作,并且和项目代码保持一致。

dotnet try verify命令的目的是为了验证你的文档按照你期望的样子工作。

通过使用dotnet try verify命令,你可以检测Markdown文件并编译错误。例如,如果我将之前代码中移除一个分号,并且将methods
代码分块改名为method。现在如果运行编译器,会出现以下错误。



尝试使用全局工具dotnet try

dotnet try现在已经可以使用了。这是一个dotnet try全局工具的早期预览版,你可以从我们的仓储
<https://github.com/dotnet/try>克隆代码。

入门

* 克隆代码仓储
* 签出Samples分支
* 安装.NET Core 2.1或3.0预览版
* 打开控制台窗口
* 安装Try .NET全局工具 dotnet tool install --global dotnet-try --version
1.0.19264.11
更新dotnet try也很简单,只需要运行如下命令
dotnet tool update -g dotnet-try
定位到当前仓储的Samples目录,输入dotnet try


浏览器会自动打开



Try .NET现在开源了

现在Try.NET已经在Github上开源了!由于我们仍处于早期开发阶段,所以目前我们无法接受任何功能的Pull Request,
但我们打算在未来这么做。请随时在我们的Issue列表中提交Bug报告。 如果你有任何功能建议,请在我们的Issue列表中使用社区建议的标签提交。

友情链接
KaDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:ixiaoyang8@qq.com
QQ群:637538335
关注微信