我一直在运行StyleCop而不是一些C#代码,并且它一直报告我的using指令应该在命名空间内.
是否存在将using指令放入命名空间而不是命名空间外的技术原因?
这似乎是一个类似的问题,但没有一个答案适合我的代码...:阅读 Main Program.cs 中的 appsettings.json
这非常相似,但由于某种原因对我不起作用:ASP.NET Core 6 how to access Configuration during setup
我正在将 .NET 6 beta 应用程序移植到 .NET 6 的稳定版本。
这意味着我想移植负责导入 IConfiguration 的代码(是的,我知道它向后兼容单独的Startup.cs和Program.cs文件,但我愿意使用新语法)。IConfiguration 基本上是 ASP.NET Core 中的文件 appsettings.json。
在旧代码中,它看起来像这样:
public class Startup
{
internal static IConfiguration Configuration { get; private set; }
public Startup(IConfiguration configuration)
{
Configuration = configuration;
}
Run Code Online (Sandbox Code Playgroud)
我尝试了以下方法:
using Microsoft.Extensions.Configuration;
// IConfiguration init test
var Configuration = builder.Configuration;
Run Code Online (Sandbox Code Playgroud)
似乎 Microsoft.Extensions.Configuration 甚至没有被使用!我得到的语法来自这篇博客文章:https://gavilan.blog/2021/08/19/getting-the-iconfiguration-in-the-program-class-asp-net-core-6/
这个问题很原始,但我似乎没有搞清楚。感谢任何帮助解决此问题的帮助,因为它可以在新的 .NET 6 最小 API 中工作。
我发现本指南很有用,但它显然没有解决手头的问题: …
我创建了一个控制台应用程序.NET 6.0来学习单例模式。但我观察到文件发生了重大变化Program.cs。
namespace和class方法Main已从program.cs中删除.NET 6.0。
我相信将要编写的代码program.cs将被视为在Main方法内。但我想创建两个使用全局初始化实例的静态方法,但我无法做到这一点。
通过声明如下实例:
它给出编译错误:
CS0106 修饰符“static”对此项目无效
它给出编译错误:
CS8421:静态本地函数不能包含对“tableservers1”的引用。
这是所有代码program.cs:
using SingletonApp;
static TableServers tableservers1 = TableServers.GetInstance();
static TableServers tableservers2 = TableServers.GetInstance();
Console.WriteLine("Hello, World!");
for (int i = 0; i < 5; i++)
{
Host1();
Host2();
}
Console.WriteLine();
static void Host1()
{
Console.WriteLine("Host1 Next server is: " + tableservers1.GetNextServer());
}
static void Host2()
{
Console.WriteLine("Host2 Next server is: …Run Code Online (Sandbox Code Playgroud) .NET 6.0 中的 C#10 支持称为全局 using 指令的新功能。
它似乎做了两件事:
using ...在 *.cs 文件的顶部包含该命名空间的 。我知道我可以通过将以下内容添加到我的项目文件中来禁用将命名空间隐式添加到全局使用中:
<PropertyGroup>
<ImplicitUsings>disable</ImplicitUsings>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)
我的问题:
全局使用文件位于// <auto-generated/>顶部,因此我不能仅在此文件中添加/删除/编辑全局使用。
我正在使用 .NET 6 在 Visual Studio Code 中对 C# 进行编程。在 .NET 6 中,不再需要显式的 main 方法。有谁知道如何以及在哪里包含 using 指令,例如 using System.Diagnostics?
这就是我的程序目前的样子:
await MeakeBreakfastAsync();
async Task MakeBreakfastAsync(){
...
}
static async Task<string> MakeCoffeAsync() {
...
}
static async Task<string> MakeToastAsync() {
...
}
Run Code Online (Sandbox Code Playgroud) c# ×5
.net-6.0 ×4
.net ×2
c#-10.0 ×2
.net-core ×1
asp.net-core ×1
namespaces ×1
omnisharp ×1
stylecop ×1