小编g.p*_*dou的帖子

NSubstitute的Received(count)始终为绿色(在模拟具体类时)

编辑:在工作中,我进一步隔离了问题,该问题仅在模拟具体类时出现,而不是在界面上,因此我正在编辑标题。

语境

似乎NSubstitute的.Received(...)始终为绿色,无论是否发生任何调用。为了解决这个问题,我创建了一个两行单元测试,实际上什么也没叫,仍然检查有10个电话是绿色的:

 var processor = Substitute.For<Processor>();
 processor.Received(10).Process(Arg.Any<MyType>()); // this is green (do not throws)
Run Code Online (Sandbox Code Playgroud)

使用最新的稳定版3.1.0

我想念什么吗?如果是,检查特定数量的呼叫的正确方法是什么?(坏消息是,如果这是一个错误,则我们的项目充满了潜在的错误绿色。

c# unit-testing mocking nsubstitute

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

无法拉取 nanoserver:1903 Docker 镜像

我想拉纳米服务器:1903

docker pull mcr.microsoft.com/windows/nanoserver:1903
Run Code Online (Sandbox Code Playgroud)

此命令行是从Docker Hub复制的,该页面还说,该映像是在 2 周前创建的:05/22/2019

当我执行 pull 命令时,我收到错误消息。

1903:从 windows/nanoserver 中提取
清单列表条目中没有未知的匹配清单

我缺少什么?

我使用的是 Windows 10,一些额外的诊断信息:

Swarm:非
活动 默认隔离:hyperv
内核版本:10.0 17763 (17763.1.amd64fre.rs5_release.180914-1434)
操作系统:Windows 10 Pro Version 1809(操作系统内部版本 17763.404)
OSType:windows
架构:x86_64
CPU:28
总内存:63.69GiB
调试模式(客户端): false
调试模式(服务器): true
注册表: https: //index.docker.io/v1/
实验:true

windows docker nano-server

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

ASP.NET Core 3 中的 app.UseOpenIdConnectAuthentication() 和 OpenIdConnectMiddleware 在哪里?

语境

我正在尝试迁移一个使用app.UseOpenIdConnectAuthentication()但在包中找不到此扩展方法的应用程序此扩展方法Microsoft.AspNetCore.Authentication.OpenIdConnect 的实际来源使用的类OpenIdConnectMiddleware似乎也已消失。

如何迁移此应用程序?

asp.net-core

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

即使没有显式的 [AutoValidateAntiforgeryToken],防伪令牌也会自动添加吗?

语境

我注意到,在 VS 2019 中从开箱即用的模板创建新的 ASP.NET Core Razor 页面应用程序后,即使是具有最纯粹模型类的最纯粹的html 表单也会使用<input name="__RequestVerificationToken" type="hidden" value="...">

问题

我是否遗漏了某些内容,并且在某个地方有一个显式属性/语句指示 ASP.NET Core 添加防伪功能,或者现在这是默认设置?(这使得 using[AutoValidateAntiforgeryToken]过时了)

...或者...

这只是始终无条件<input name="__RequestVerificationToken" type="hidden" value="...">渲染的,并且我可以针对它打开服务器端验证吗?这种情况下如何进行冒烟测试验证是否有效?[AutoValidateAntiforgeryToken]

示例代码

@page
@model TestFormModel
@{
    ViewData["Title"] = "Home page";
}

<div class="text-center">
    <form method="post">
        <input type="text" name="myinput"/>
        <input type="submit" value="Submit" />
    </form>
</div>

//[AutoValidateAntiforgeryToken]
public class TestFormModel : PageModel
{
    private readonly ILogger<TestFormModel> _logger;

    public TestFormModel(ILogger<TestFormModel> logger)
    {
        _logger = logger;
    }

    public void OnGet()
    { …
Run Code Online (Sandbox Code Playgroud)

request-validation antiforgerytoken asp.net-core razor-pages

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

apt update 每次都会在我的 docker 构建中运行吗?

我有一个 dockerfile,它的第五行是

RUN apt update -y
Run Code Online (Sandbox Code Playgroud)

假设前五行在未来的构建中不会改变。只有下面的行会改变。

问题

当我后来一次又一次地构建这个图像时,

  • 是否会apt update再次运行(因此生成不断变化的包版本,以不确定的结果结束)或...
  • 由于分层文件系统的更改,直到该行之后创建的层都将从缓存中重用吗?

docker dockerfile

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

如何格式化具有固定有效位数的双精度数,而不考虑小数位?

也许我的措辞不太清楚,所以我尝试举例说明:

  • 如果我有一个像 123.4567 这样的双精度值,我想将其格式化为 123
  • 如果我有一个像 12.34567 这样的双精度值,我想将其格式化为 12.3
  • 如果我有一个像 1.234567 这样的双精度值,我想将其格式化为 1.23

当然,我可以使用 switch/case 语句来做到这一点,但我想知道是否有任何内置或实用程序格式,什么可以开箱即用地做到这一点。

提前致谢

.net c#

0
推荐指数
1
解决办法
1069
查看次数

如何使用 powershell 根据 dns 名称查找和删除以前创建的证书?

我可以使用 PowerShell 创建自签名证书:

\n\n
$cert = New-SelfSignedCertificate \xe2\x80\x93DnsName www.test.com -CertStoreLocation \xe2\x80\x9ccert:\\LocalMachine\\My\xe2\x80\x9d\n
Run Code Online (Sandbox Code Playgroud)\n\n

因为这是一个自动化测试场景,所以我必须允许多次运行。下次我(这是一个完全独立的会话)想找到所有 dns 名称为 www.test.com 的证书,并完全擦除它们。它可能不止一个,当然还有不同的指纹等。

\n\n

不幸的是,我找不到任何删除证书的 PowerShell 命令。我想我应该基于 dns 进行查询,然后在循环中删除...

\n\n

问题

\n\n

这个任务可以完全在 Powershell 中解决吗?(删除具有给定 DNS 名称的所有证书)

\n

powershell ssl-certificate

0
推荐指数
1
解决办法
887
查看次数

当合法变量字符跟随字符串中的变量时,如何创建PowerShell字符串插值?

我尝试在PowerShell中使用字符串插值:

$myvariable = "World"
Write-Host "Hello $myvariable" 
Run Code Online (Sandbox Code Playgroud)

上面的代码运行正常,写着"Hello World"

但是,如果在字符串中的字符后跟变量部分形成一个合法的变量名称,由于歧义,它无法解析

$myvariable = "World"
Write-Host "Hello $myvariableimmediately continuing" 
Run Code Online (Sandbox Code Playgroud)

我明白这应该不行,但尽管使用谷歌搜索我找不到这样的例子.我想念的语法是什么?

powershell

0
推荐指数
2
解决办法
61
查看次数