创建新的 blazor 项目dotnet new blazor。修改Index.cshtml:
@page "/"
@page "/{Id}"
<h1>Id = @Id</h1>
<p><a href="/">Without Id</a></p>
<p><a href="/15">With Id = 15</a></p>
@functions {
[Parameter]
public string Id { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
运行应用程序。
当我单击With Id = 15链接时,一切都按预期工作 - url 已更改,参数{Id}已分配给 value Id,一切正常。
但是当我Without Id在那之后单击链接时,url 已更改,但我的 Id 保持不变 - 等于 15。
为什么我的值没有改变?我在这里缺少什么?我怎样才能解决这个问题?
我在 TeamCity 的构建过程中遇到随机问题。我有两种配置:第一种用于重建+单元测试。其次是工件依赖性,使用 SonarQube 分析器。当 Teamcity 执行第一个配置时,我每 5-10 个构建就会收到随机错误消息:
CSC 错误 CS0006:找不到元数据文件 'E:\TeamCity\buildAgent2\temp\buildTmp\.sonarqube\resources\0\Google.Protobuf.dll'
CSC 错误 CS0006:找不到元数据文件 'E:\TeamCity\buildAgent2\temp\buildTmp\.sonarqube\resources\0\SonarAnalyzer.CSharp.dll'
CSC 错误 CS0006:找不到元数据文件 'E:\TeamCity\buildAgent2\temp\buildTmp\.sonarqube\resources\0\SonarAnalyzer.dll'
错误是完全随机的 - 当我在没有任何更改的情况下再次运行进程时,错误就消失了。当我检查 buildTmp\.sonarqube 目录时,无论构建是否成功,那里都没有任何内容。
我的项目中没有对这些库的任何引用,并且我的重建步骤与 SonarQube 无关。我们在 VisualStudio 2017 中使用 SonarLint,但我们的 *.csproj 文件中没有任何对 SonarQube 的引用。
是否可以在控制台应用程序中显示不同颜色的文本?例如,我在一行中得到了文本“Hello Word” ,但我希望“Hello”一词为绿色,“World”一词为红色?
没有任何 NuGets 也可以(?)如果没有,你能推荐一个简单的 NuGet 吗?
谢谢和亲切的问候!
正如标题所说,我想使用 aTestCase和TestCaseSource/的组合ValueSource。
这是一个例子:
public static string[] Source1 = new string[]
{
"One", "Two", "Three"
};
public static string[] Source2 = new string[]
{
"Four", "Five", "Six"
};
[TestCase("A"), TestCaseSource(nameof(Source1))]
[TestCase("B"), TestCaseSource(nameof(Source2))]
[TestCase("C"), TestCaseSource(nameof(Source1))]
[TestCase("C"), TestCaseSource(nameof(Source2))]
public void MyTest(string x, string y)
{
// ...
}
Run Code Online (Sandbox Code Playgroud)
当然这是行不通的,但我想做的是:
有可能实现这样的目标吗?