相关疑难解决方法(0)

自托管.NET Core控制台应用程序中的Startup.cs

我有一个自托管的.NET Core Console应用程序.

Web显示ASP.NET Core的示例,但我没有Web服务器.只是一个简单的命令行应用程序

是否可以为控制台应用程序执行此类操作?

public static void Main(string[] args)
{
    // I don't want a WebHostBuilder. Just a command line

    var host = new WebHostBuilder()
        .UseKestrel()
        .UseContentRoot(Directory.GetCurrentDirectory())
        .UseIISIntegration()
        .UseStartup<Startup>()
        .Build();

    host.Run();
}
Run Code Online (Sandbox Code Playgroud)

我想在ASP.NET Core中使用Startup.cs,但是在控制台上.

怎么样?

c# console-application .net-core

44
推荐指数
6
解决办法
3万
查看次数

如何在 .NET 6 中创建测试服务器?

我需要为 ASP.NET 6 API 编写一些单元测试,并且需要创建一个测试服务器来验证授权。但是,由于启动类已被删除,我不知道应该使用什么作为创建测试服务器的入口点。这是以前版本中创建的方式。

 var server = new TestServer(new WebHostBuilder().UseStartup<Startup>());
Run Code Online (Sandbox Code Playgroud)

c# asp.net .net-6.0

10
推荐指数
2
解决办法
1万
查看次数

ASP.NET Core 测试 - 没有方法 'public static IHostBuilder CreateHostBuilder(string[] args)

我正在尝试在测试中设置我的应用程序并在Startup's Configure方法中使用,context.Database.EnsureCreated()并且期望Sqlite文件出现在Test'sbin 文件夹中

这是我的代码:

using Microsoft.AspNetCore.Mvc.Testing;
using System.Threading.Tasks;
using Xunit;

namespace MyApp.Tests
{
    public class UnitTest1 : IClassFixture<CustomWebApplicationFactory<FakeStartup>>
    {
        private readonly CustomWebApplicationFactory<FakeStartup> _factory;

        public UnitTest1(CustomWebApplicationFactory<FakeStartup> factory)
        {
            _factory = factory;
        }

        [Fact]
        public async Task Test1()
        {
            // Arrange
            var client = _factory.CreateClient();

            // Act
            var response = await client.GetAsync("https://localhost:5001/");

            // Assert
            response.EnsureSuccessStatusCode(); // Status Code 200-299
            Assert.Equal("text/html; charset=utf-8", response.Content.Headers.ContentType.ToString());
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

正在使用 WebAppFactory:

using MyApp.Tests;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Mvc.Testing;

public …
Run Code Online (Sandbox Code Playgroud)

c# testing asp.net-core

9
推荐指数
1
解决办法
6458
查看次数