gpt4 book ai didi

c# - 'MvxWpfSetup' 必须是具有公共(public)无参数构造函数的非抽象类型

转载 作者:行者123 更新时间:2023-12-04 12:04:45 24 4
gpt4 key购买 nike

我正在尝试遵循此视频末尾的代码 here ,但我在 1:11:10 标记附近收到此错误:

error CS0310: 'MvxWpfSetup<App>' must be a non-abstract type with a public parameterless constructor in order to use it as parameter 'TMvxSetup' in the generic type or method 'MvxSetupExtensions.RegisterSetupType<TMvxSetup>(object, params Assembly[])'
我真的不知道什么代码是相关的,但这是给出错误的文件:
using MvvmCross.Core;
using MvvmCross.Platforms.Wpf.Core;
using MvvmCross.Platforms.Wpf.Views;

namespace MvxStarter.Wpf
{
/// <summary>
/// Interaction logic for App.xaml
/// </summary>
public partial class App : MvxApplication
{
protected override void RegisterSetup()
{
this.RegisterSetupType<MvxWpfSetup<MvxStarter.Core.App>>();
}
}
}
我多次浏览了整个部分,我很确定我拥有他拥有的一切。我什至下载了他的源代码,但我无法打开项目,所以我复制并粘贴了所有代码,但仍然出现此错误。我该怎么办?如果您告诉我要发布什么,我可以发布更多相关代码。我不知道这个错误是什么意思,我在网上找不到任何关于它的信息。
编辑:我尝试按照官方文档示例项目进行操作,但在完全相同的行上遇到了完全相同的错误。我的安装有问题吗?
https://www.mvvmcross.com/documentation/tutorials/tipcalc/the-core-project
https://www.mvvmcross.com/documentation/tutorials/tipcalc/a-wpf-ui-project

最佳答案

需要创建Setup 类,这样代码就变成了。
使用 MvvmCross.Core;
使用 MvvmCross.Platforms.Wpf.Core;

using MvvmCross.Platforms.Wpf.Views;

namespace MvxStarter.Wpf
{
/// <summary>
/// Interaction logic for App.xaml
/// </summary>
public partial class App : MvxApplication
{
protected override void RegisterSetup()
{
this.RegisterSetupType<Setup>();
}
}
}
然后设置变成
namespace MvxStarter.Wpf
{
public class Setup : MvxWpfSetup<Core.App>
{
protected override ILoggerProvider CreateLogProvider()
{
return new SerilogLoggerProvider();
}

protected override ILoggerFactory CreateLogFactory()
{
Log.Logger = new LoggerConfiguration()
.MinimumLevel.Debug()
.CreateLogger();

return new SerilogLoggerFactory();
}
}
}
或类似。这使用了 Nuget Serilog 以及其他。

关于c# - 'MvxWpfSetup<App>' 必须是具有公共(public)无参数构造函数的非抽象类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67965424/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com