此存储库包含.NET文档中任何主题的一部分的所有示例代码。子食子中有几个不同的项目。这些子折叠者的组织类似于.NET的文档组织。其中一些文章将有多个与它们相关的样本。
内容团队在dotnet/docs和dotnet/dotnet-api-docs存储库中跟踪.NET文档的问题。该存储库已关闭问题。针对这些存储库中的新样本的现有样本提出问题和建议。如果不确定在哪里,请选择dotnet/docs。此过程使与解释每个样本概念的文章相关的问题保持了问题。最好的过程是从每个文档页面底部的反馈控件提交问题:
此存储库中的代码表示演示应用程序或库场景的程序。这些样品通常使用多个技术,功能或工具包。每个示例都有一个readme.md文件,可以解释示例并链接到资源以获取更多信息。
样本应是可建造的项目。这些项目应在给定样本的最广泛平台上构建和运行。实际上,这意味着在可能的情况下构建.NET基于.NET核心的控制台应用程序。特定于Web或UI框架的样本应根据需要添加这些工具。示例包括Web应用程序,移动应用程序,WPF或Windows表单应用程序等。
我们正在努力为所有代码建立CI系统。当您对样本进行任何更新时,请确保每个更新都是可建造项目的一部分。理想情况下,还要添加测试,以了解样品的正确性。
使用.NET Core SDK安装的.NET Core CLI构建任何.NET核心样本。然后在任何样本的目录中从CLI运行这些命令:
dotnet build
dotnet run这些将分别安装任何必要的依赖项,构建项目并分别运行项目。
多项目样本在README.md文件中的根目录中具有指令。
除了指出,所有样本都从.NET Core支持的任何平台上的命令行构建。有一些特定于Visual Studio的样本,需要Visual Studio 2017或以后。此外,某些样品显示了特定于平台的功能,并且需要特定的平台。其他样本和摘要需要.NET框架并将在Windows平台上运行,并且需要开发人员包的目标框架版本。
如果您想添加代码示例:
您的样本必须是可建造项目的一部分。在可能的情况下,项目应在.NET Core支持的所有平台上构建。此类例外是展示特定于平台的功能或平台特异性工具的样本。
您的样本应符合运行时编码样式以保持一致性。
static方法而不是实例方法。您的样本应包括适当的例外处理。它应该处理所有可能在样本背景下抛出的例外。例如,调用Console.Readline方法检索用户输入的示例应使用适当的异常处理,当输入字符串作为参数传递给方法时。同样,如果您的样本期望方法调用失败,则必须处理结果的异常。始终处理该方法抛出的特定异常,而不是基类异常,例如异常或系统删除。
如果您的示例构建了独立包装,则必须包括我们的CI构建系统使用的运行时间,除了您的示例使用的任何运行时间:
win7-x64win8-x64win81-x64ubuntu.16.04-x64我们将有一个CI系统,不久就可以构建这些项目。
创建样本:
提出问题或将评论添加到您正在处理的现有问题上。
写出解释样本中所示概念的主题(示例: docs/standard/linq/where-clause.md )。
写下您的示例(示例: whereclause-sample1.cs )。
创建一个带有主入口点的program.cs来调用您的样本。如果已经有一个,请将调用添加到您的示例中:
public class Program
{
public void Main ( string [ ] args )
{
WhereClause1 . QuerySyntaxExample ( ) ;
// Add the method syntax as an example.
WhereClause1 . MethodSyntaxExample ( ) ;
}
}如果仅包含一个项目,请勿检查解决方案文件。
构建并运行样本:
转到示例文件夹并构建以检查错误:
dotnet build运行样本:
dotnet run将readme.md添加到样品的根目录中。
这应该包括对代码的简要说明,并将人们推荐给引用样本的文章。