尝试从空白创建一个新的 Prism Uwp 项目 "App Universal Windows"
Trying to create a new Prism Uwp project from blank a "App Universal Windows"
希望有人能给我一些提示来解决我的问题。
我从空白 "App Universal Windows" (UWP) 开始。
我升级到最新的 "Microsoft.NETCore.UniversalWindowsPlatform": "5.2.2"
我正在使用 Nuget 安装 Prism 并选择 Prism.Unity v6.3.0-pre1。
(我也试过6.2有同样的症状。)
将 App.xaml.cs 更改为:
using System.Threading.Tasks;
using Windows.ApplicationModel.Activation;
using Microsoft.Practices.Unity;
using Prism.Unity.Windows;
namespace Bituc
{
sealed partial class App : PrismUnityApplication
{
public App()
{
this.InitializeComponent();
}
protected override Task OnLaunchApplicationAsync(LaunchActivatedEventArgs args)
{
NavigationService.Navigate("Main", null);
return Task.FromResult<object>(null);
}
} } }
这给了我这个编译错误:
错误 CS0263 'App' 的部分声明不得指定不同的基数
错误 CS0115 'App.OnLaunchApplicationAsync(LaunchActivatedEventArgs)': 找不到合适的方法来覆盖。
错误 CS0103 当前上下文中不存在名称 'NavigationService'。
这是我的 project.json 文件:
"dependencies": {
"Microsoft.NETCore.UniversalWindowsPlatform": "5.2.2",
"Prism.Unity": "6.3.0-pre1"},
"frameworks": {"uap10.0": {}},
"runtimes": {
"win10-arm": {},
"win10-arm-aot": {},
"win10-x86": {},
"win10-x86-aot": {},
"win10-x64": {},
"win10-x64-aot": {}
}
我错过了什么?
感谢您的任何建议。
格雷格
你的App.xaml
是这样的吗?
<Application x:Class="BorealDesigner.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
...
</Application>
如果是这样,也将 Application 更改为 PrismUnityApplication,因为这就是错误消息告诉您的内容:如果您定义 class 在两个文件中,你不能让它从一个文件中的 Application
派生而在另一个文件中从 PrismUnityApplication
派生。
顺便说一句,可能鲜为人知的事实是:您只需要一个 class 声明文件来声明基础 class。您在后面的代码中发现的典型 : UserControl
是多余的...
希望有人能给我一些提示来解决我的问题。
我从空白 "App Universal Windows" (UWP) 开始。
我升级到最新的 "Microsoft.NETCore.UniversalWindowsPlatform": "5.2.2"
我正在使用 Nuget 安装 Prism 并选择 Prism.Unity v6.3.0-pre1。
(我也试过6.2有同样的症状。)
将 App.xaml.cs 更改为:
using System.Threading.Tasks;
using Windows.ApplicationModel.Activation;
using Microsoft.Practices.Unity;
using Prism.Unity.Windows;
namespace Bituc
{
sealed partial class App : PrismUnityApplication
{
public App()
{
this.InitializeComponent();
}
protected override Task OnLaunchApplicationAsync(LaunchActivatedEventArgs args)
{
NavigationService.Navigate("Main", null);
return Task.FromResult<object>(null);
}
} } }
这给了我这个编译错误:
错误 CS0263 'App' 的部分声明不得指定不同的基数
错误 CS0115 'App.OnLaunchApplicationAsync(LaunchActivatedEventArgs)': 找不到合适的方法来覆盖。
错误 CS0103 当前上下文中不存在名称 'NavigationService'。
这是我的 project.json 文件:
"dependencies": {
"Microsoft.NETCore.UniversalWindowsPlatform": "5.2.2",
"Prism.Unity": "6.3.0-pre1"},
"frameworks": {"uap10.0": {}},
"runtimes": {
"win10-arm": {},
"win10-arm-aot": {},
"win10-x86": {},
"win10-x86-aot": {},
"win10-x64": {},
"win10-x64-aot": {}
}
我错过了什么?
感谢您的任何建议。
格雷格
你的App.xaml
是这样的吗?
<Application x:Class="BorealDesigner.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
...
</Application>
如果是这样,也将 Application 更改为 PrismUnityApplication,因为这就是错误消息告诉您的内容:如果您定义 class 在两个文件中,你不能让它从一个文件中的 Application
派生而在另一个文件中从 PrismUnityApplication
派生。
顺便说一句,可能鲜为人知的事实是:您只需要一个 class 声明文件来声明基础 class。您在后面的代码中发现的典型 : UserControl
是多余的...