当您使用[Theory]连同[InlineData]它会创建提供了在线数据的每个项目的测试.但是,如果您使用[MemberData]它,它将只显示为一个测试.
有没有办法让[MemberData]测试显示为多个测试?
我有一个带有第 5 版程序集的 Blazor WASM 项目,并尝试根据本文激活调试:https ://docs.microsoft.com/en-us/aspnet/core/blazor/debug?view=aspnetcore-3.1
为此,我确保更新了所有程序集引用并调整了启动设置。后者现在看起来像这样:
{
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "http://localhost:62310",
"sslPort": 44325
}
},
"profiles": {
"IIS Express": {
"commandName": "IISExpress",
"launchBrowser": true,
"inspectUri": "{wsProtocol}://{url.hostname}:{url.port}/_framework/debug/ws-proxy?browser={browserInspectUri}",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
},
"ApplySupportTool.Client": {
"commandName": "Project",
"launchBrowser": true,
"inspectUri": "{wsProtocol}://{url.hostname}:{url.port}/_framework/debug/ws-proxy?browser={browserInspectUri}",
"applicationUrl": "https://localhost:5001;http://localhost:5000",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
这些也是我在 WASM 项目中的参考资料:
<PackageReference Include="System.Net.Http.Json" Version="3.2.0-preview5.20210.3" />
<PackageReference Include="Microsoft.AspNetCore.Components.DataAnnotations.Validation" Version="3.2.0-preview2.20160.5" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly" Version="3.2.0-preview5.20216.8" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.Build" Version="3.2.0-preview5.20216.8" PrivateAssets="all" />
<PackageReference …Run Code Online (Sandbox Code Playgroud) 我在 S1 应用服务上有一个非常简单的 asp.net core 托管 blazor wasm 应用程序,有 2 个插槽:集成和生产。当我刚刚发布到我的集成槽时,大约需要 50 秒。但当我将集成与生产插槽交换时,需要 7 分钟以上。这两个应用程序的插槽在此之后都非常慢,通常需要一分钟多的时间才能再次做出反应。在交换期间,两者根本没有响应。
只有 2 个设置和连接字符串需要更改。而且我没有任何手动预热。交换功能是否真的意味着在如此低的配置上使用,或者我可以调整配置中的某些内容以加快速度吗?
我正在尝试 Blazor ServerSide 并创建了一个组件以在用户未登录时重定向到登录页面。
@inject Microsoft.AspNetCore.Components.NavigationManager NavigationManager;
@code {
/// <inheritdoc />
protected override Task OnInitializedAsync()
{
NavigationManager.NavigateTo("Login");
return Task.CompletedTask;
}
Run Code Online (Sandbox Code Playgroud)
}
但总是在调用“NavigateTo”时抛出以下异常:
"Microsoft.AspNetCore.Components.NavigationException: Exception of type 'Microsoft.AspNetCore.Components.NavigationException' was thrown.
at Microsoft.AspNetCore.Components.Server.Circuits.RemoteNavigationManager.NavigateToCore(String uri, Boolean forceLoad)
at Microsoft.AspNetCore.Components.NavigationManager.NavigateTo(String uri, Boolean forceLoad)
at ApplySupportTool.Blazor.Pages.RedirectToLogin.OnInitializedAsync() in C:\\Users\\padruttn\\Documents\\git\\ApplySupportTool\\src\\ApplySupportTool.Blazor\\Pages\\RedirectToLogin.razor:line 8"
Run Code Online (Sandbox Code Playgroud)
有趣的是,尽管有例外,还是进行了导航。我也尝试使用路径“/login”来调用它,但这里的行为相同。
我有一个带有Xamarin Forms的Xamarin Android应用程序。从Xamarin Forms 3.4.0.1029999更新之后,我在Resource.Designer中有如下条目:
// aapt resource value: 0x7F030220
public const int bottomtab.navarea = 2130903584;
// aapt resource value: 0x7F030221
public const int bottomtab.tabbar = 2130903585;
Run Code Online (Sandbox Code Playgroud)
有了这些,我得到了很多这样的错误:
我认为这是因为要点。有趣的是,构建是成功的。我该如何解决这个错误?
编辑:链接到项目:https : //github.com/MoneyFox/MoneyFox
我有 .net core 测试项目。当我在 Visual Studio 中构建它或使用 TestManager 时,它构建没有问题。但是当我在包管理器控制台上执行以下命令时,出现错误:
点网测试C:\projects\moneyfox\Src\MoneyFox.DataAccess.Tests\MoneyFox.DataAccess.Tests.csproj
错误:
error MSB4019: The imported project "C:\Program Files\dotnet\sdk\1.0.3\Microsoft\Portable\v5.0\Microsoft.Portable.CSharp.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk
Run Code Online (Sandbox Code Playgroud)
我检查了路径,它确实不存在。但我有点困惑该怎么办,因为当我在视觉工作室上构建它时它就起作用了。有什么建议么?
我有一个UWP应用程序,它将FCU作为最小版本和目标版本.当我调试一切都很好.当我在发布模式下编译时.但是,当我激活.net本机编译应用程序崩溃时,在日志中显示此消息:
The program '[19396] MoneyFox.UWP.exe' has exited with code -1073741511 (0xc0000139) 'Entry Point Not Found'.
Activation of the Windows Store app '57598ApplySolutionsSoftwa.MoneyFoxBeta_de8w9y82qfkbg!App' failed with error 'The app didn't start'.
Run Code Online (Sandbox Code Playgroud)
我安装了Microsoft.NETCore.UniversalWindowsPlatform 6.0.2,它使用.net native 2.0.
我还创建了一个新的Blank UWP应用程序,并添加了对我的核心项目的引用.一旦我添加了对MoneyFox.Business的引用,应用程序就无法再启动并崩溃上面的消息.
那是什么,或者我怎么调试它?
编辑:我做了一些进一步的研究.我检查了最后一个稳定版本,并将应用程序的目标和最小版本更新为FCU.一旦完成,就会出现同样的错误.所以它似乎与新的SDK有关.
编辑2:我回到了旧版本的代码,并走上了新版本的sdk和Microsoft.NETCore.UniversalWindowsPlatform.
只要我使用Microsoft.NETCore.UniversalWindowsPlatform 5.3.4它就可以正常工作.但是当我更新到版本6.0.2并使用.net native激活时,我会在启动时直接获得此异常:
Unhandled exception at 0x0F497A4C (mrt100_app.dll) in MoneyFox.Windows.exe: 0xC0000005: Access violation reading location 0x01189884.
Run Code Online (Sandbox Code Playgroud)
只要未激活.net本机,它就可以在调试和发布中工作.
我尝试根据这篇文章调试它:https://blogs.msdn.microsoft.com/devops/2015/07/29/debugging-net-native-windows-universal-apps/
但消息是一样的.我在这里查看了已知问题:https://github.com/dotnet/core/blob/master/Documentation/ilcRepro.md
基于此,我尝试禁用SharedLibrary功能.之后我收到以下错误:
The program '[16184] MoneyFox.Windows.exe' has exited with code -1073741511 (0xc0000139) 'Entry Point Not Found'.
Activation of …Run Code Online (Sandbox Code Playgroud) 我有一个使用 .net 7 预览版 2 的 .net maui 应用程序,我想为 Android 发布该应用程序。
我的发布命令:dotnet publish ${{env.UI_PROJECT_PATH}} -f net7.0-android -c Release
这给了我这个错误:
C:\Program Files\dotnet\sdk\7.0.100-rc.2.22477.23\Sdks\Microsoft.NET.ILLink.Tasks\build\Microsoft.NET.ILLink.targets(86,5): error NETSDK1144: Optimizing assemblies for size failed. Optimization can be disabled by setting the PublishTrimmed property to false. [D:\a\MoneyFox\MoneyFox\src\MoneyFox.Ui\MoneyFox.Ui.csproj::TargetFramework=net7.0-android]
ILLink : error IL1011: Failed to write 'obj\Release\net7.0-android\android-x64\linked\SkiaSharp.Views.Android.dll'. [D:\a\MoneyFox\MoneyFox\src\MoneyFox.Ui\MoneyFox.Ui.csproj::TargetFramework=net7.0-android]
Fatal error in IL Linker
Unhandled exception. Mono.Linker.LinkerFatalErrorException: ILLink: error IL1011: Failed to write 'obj\Release\net7.0-android\android-x64\linked\SkiaSharp.Views.Android.dll'.
---> System.ArgumentException: Member 'System.Int32 SKCanvasView_ignorePixelScaling' is declared in another module and needs to be imported …Run Code Online (Sandbox Code Playgroud) 我在Azure Devops上有一个用Xamarin编写的应用程序和一个buildpipline。当我以IOS 11.x为目标时,这可以很好地构建。但是我想更新到SDK 12,因为Apple从2019年3月开始强制执行此操作:
SDK版本问题-此应用是使用iOS 11.4 SDK构建的。从2019年3月开始,提交给App Store的所有iOS应用程序必须使用Xcode 10.1或更高版本中包含的iOS 12.1 SDK或更高版本构建。
但是在生成时,我总是在Azure Devops管道中收到此错误:
MTOUCH : error MT0074: Xamarin.iOS 11.14.0 does not support a deployment target of 12.0 for iOS (the maximum is 11.4). Please select an older deployment target in your project's Info.plist or upgrade to a newer version of Xamarin.iOS.
Run Code Online (Sandbox Code Playgroud)
根据本文,我尝试使用以下脚本设置SDK版本:
/bin/bash -c "sudo $AGENT_HOMEDIRECTORY/scripts/select-xamarin-sdk.sh 5_12_0"
Run Code Online (Sandbox Code Playgroud)
不幸的是,它仍然使用11 SDK而不是12。我选择了错误的Mono版本还是选择Xamarin.IOS SDK的方法错误?
我为IOS工作完成的构建YAML:
queue:
name: Hosted macOS
demands:
- xcode
- Xamarin.iOS
steps:
- bash: |
echo "Select Xamarin Version" …Run Code Online (Sandbox Code Playgroud) 我有一个从 Xamarin Forms 迁移的 .net maui 应用程序。我可以在 Azure DevOps 和我的 Mac 上很好地构建。但是当我尝试在 Windows 上的 Visual Studio 中构建它时,我收到以下错误消息:
Assets file '..obj\project.assets.json' doesn't have a target for 'net6.0-android'. Ensure that restore has run and that you have included 'net6.0-android' in the TargetFrameworks for your project.
Assets file '..obj\project.assets.json' doesn't have a target for 'net6.0-windows10.0.22621.0'. Ensure that restore has run and that you have included 'net6.0-windows10.0.22621.0' in the TargetFrameworks for your project.
Assets file '..obj\project.assets.json' doesn't have a target for 'net6.0'. Ensure that …Run Code Online (Sandbox Code Playgroud) .net-maui ×2
c# ×2
.net-7.0 ×1
.net-core ×1
.net-native ×1
asp.net-core ×1
azure-devops ×1
blazor ×1
uwp ×1
xamarin.ios ×1
xunit.net ×1
xunit2 ×1