小编Raf*_*ael的帖子

无法将 blazor MAUI 桌面应用程序部署为 .exe

我下载了最新的 17.1 预览版并从模板创建了 blazor-maui 应用程序。想要从构建中创建单个 exe。因此单击发布并选择目标 win-x64。当我尝试发布时出现此错误

Build started...
1>------ Build started: Project: BlazorMauiApp2, Configuration: Release Any CPU ------
1>BlazorMauiApp2 -> C:\Dashboard\Workspace\microsoft\windowsforms\BlazorMauiApp2\bin\Release\net6.0-windows10.0.19041\win-x64\BlazorMauiApp2.dll
2>------ Publish started: Project: BlazorMauiApp2, Configuration: Release Any CPU ------
2>Determining projects to restore...
2>The RuntimeIdentifier 'win-x64' is invalid.
========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========
========== Publish: 0 succeeded, 1 failed, 0 skipped ==========
Run Code Online (Sandbox Code Playgroud)

preview blazor maui .net-6.0

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

如何解决“请在运行应用程序之前选择有效的设备”的问题。与 Windows 10 上的 Mac Visual Studio 配对

我有一台与 Mac 配对的 Win10 电脑。直到今天一切都还好,但今天我开始收到这样的消息:

请在运行应用程序之前选择有效的设备

当我尝试在选定的 iPhone 模拟器上调试 iOS Xamarin 应用程序时。

我的配置:

Mac:
  OS: Mac OS Catalina, version 10.15.7
  XCode Vesion: version 12.2
  Visual Studio 2019: version 8.8.4 (build 30)

Win 10:
  OS: Win10 version 10.0.19042.685
  Visual Studio 2019: version 16.8.3
Run Code Online (Sandbox Code Playgroud)

我的 Win10 计算机上有模拟器名称,但当我选择一个并尝试调试 iOS 应用程序时,我收到了上面报告的消息。

如果我直接在 Mac 上启动调试,它会在选定的 iPhone 模拟器上运行并开始调试。但是,当我在 Visual Studio 中配对的 Win10 计算机上执行相同操作时,我收到此消息。

我在 google 和 SO 上搜索了这个问题,并根据建议将 XCode 降级到 Visual Studio 支持的最可能的版本 12.2。但这并没有改变任何事情。

我只想在配对的 Win10 计算机上的模拟器上调试应用程序。

有办法解决这个问题吗?

visual-studio xamarin.ios

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

.Net MAUI启动崩溃System.IO.FileNotFoundException

(编辑:最初我收到一个 null 异常,在删除应用程序中心 Nugets 后,此异常移至 TagetInlogging,最后现在收到此异常:System.IO.FileNotFoundException)

我正在尝试将 Xamarin Forms 应用程序迁移到 MAUI。我尝试了几种方法来从包括 MS 在内的各种来源做到这一点。最后,我刚刚创建了一个新应用程序,并将我的文件移动到新项目,并更新了 .cs 和 .xaml 文件中需要的内容。删除了不兼容的 Nuget 以及与其关联的代码。

剩下的金块是:

  • 插件.BLE
  • sqlite-net-pcl
  • 社区工具包.Maui

所以我是应用程序可以编译的地方。但当我启动时,它将崩溃并出现异常“System.IO.FileNotFoundException”。InitializeComponent();它被抛出到App 类构造函数中的for 行。

App 类和 xaml 文件与创建项目时相同。

<?xml version = "1.0" encoding = "UTF-8" ?>
<Application
    xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
    xmlns:local="clr-namespace:EGrid18"
                 x:Class="EGrid18.App">
    <Application.Resources>
        <ResourceDictionary>
            <ResourceDictionary.MergedDictionaries>
                <ResourceDictionary Source="Resources/Styles/Colors.xaml" />
                <ResourceDictionary Source="Resources/Styles/Styles.xaml" />
            </ResourceDictionary.MergedDictionaries>
        </ResourceDictionary>
    </Application.Resources>
</Application>
Run Code Online (Sandbox Code Playgroud)
namespace EGrid18;

public partial class App: Application {

  public App() {
    InitializeComponent();

    MainPage = new AppShell();
  }
}
Run Code Online (Sandbox Code Playgroud)

这是堆栈跟踪(已编辑)。

at System.Reflection.Assembly.Load(AssemblyName assemblyRef, …
Run Code Online (Sandbox Code Playgroud)

migration cross-platform ios xamarin maui

5
推荐指数
0
解决办法
712
查看次数

如何在 .Net Maui 中创建选项卡式页面?

我在 .Net Maui 有一个选项卡式页面,如下所示:

<?xml version="1.0" encoding="utf-8" ?>
<TabbedPage
    xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
                     x:Class="MyApp.Pages.SomeClass"
    xmlns:Controls="clr-namespace:MyApp.Resources.Controls"
    xmlns:local="clr-namespace:MyApp.Pages"
                     Title="Some title">
    <local:Page1 />
    <local:Page2 />
    <local:Page3 />
</TabbedPage>
Run Code Online (Sandbox Code Playgroud)

这些页面或多或少相同:

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage
    xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
                     x:Class="MyApp.Pages.Page1"
    xmlns:Controls="clr-namespace:MyApp.Resources.Controls"
    xmlns:VerticalStackLayout="clr-namespace:MyApp.Resources.Controls"      
                     Title="Vente">
    <VerticalStackLayout>
        <Label Text="Page 1"/>
    </VerticalStackLayout>
</ContentPage>
Run Code Online (Sandbox Code Playgroud)

C# 代码:

public partial class Page1: ContentPage {
  public Page1() {
    InitializeComponent();
  }
}
Run Code Online (Sandbox Code Playgroud)

选项卡式页面在 Windows 上正常工作:

截屏

然而,在物理 Android 设备上,打开选项卡式页面时出现以下异常。这些页面都没有 C# 内容。它们100%是空的。

0xFFFFFFFFFFFFFFFF in Android.Runtime.JNIEnv.monodroid_debugger_unhandled_exception C#
0x1A in Android.Runtime.JNINativeWrapper._unhandled_exception at /Users/runner/work/1/s/xamarin-android/src/Mono.Android/Android.Runtime/JNINativeWrapper.g.cs:12,5 C#
0x23 in Android.Runtime.JNINativeWrapper.Wrap_JniMarshal_PPLLL_L at /Users/runner/work/1/s/xamarin-android/src/Mono.Android/Android.Runtime/JNINativeWrapper.g.cs:353,26    C#
0xEE …
Run Code Online (Sandbox Code Playgroud)

c# android maui

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

如何在 Visual Studio for Mac 上更改 iOS 模拟器

如何更改 Visual Studio for Mac 上的默认 iOS 模拟器?

当我将 MacBook 与 PC 配对时,我会看到 Visual Studio 2019(在 Windows 上)中可用的 iOS 模拟器列表。但是,当我直接在 MacBook 上工作并运行 Visual Studio for Mac 时,只有一个(灰色的)模拟器可用,我不知道如何更改它。检查解决方案选项、项目设置。但没有办法改变它。

现在看起来是这样的:

默认 ios 模拟器

我该如何解决这个问题?


更新#1

也许这些信息会有所帮助。不久前,我的 XCode 和 Visual Studio 自动更新到 12.3,我开始收到与缺少开发人员配置文件相关的错误。我卸载了 XCode 12.3 和 Visual Studio 并安装了以前的版本。现在 XCode 版本是 12.2,与开发人员配置文件相关的错误消息消失了。也许它与我遇到的问题有某种联系。

  • 当前 XCode 版本:12.2 (12B45b)
  • Visual Studio for Mac 版本:8.8.4(内部版本 30)
  • 操作系统:macOS Catalina 10.15.7

更新#2

我已将 MacOS 更新到 Big Sur 版本 我还卸载了 XCode 并再次安装了 12.3 版本 我还卸载了 Visual Studio for Mac 并再次安装了它。

问题仍然存在。


更新#3

下面是有关版本的信息: …

visual-studio ios xamarin

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

Xamarin iOS:System.ExecutionEngineException。详细信息:在仅 aot 模式下运行时尝试 JIT 编译方法

在我的项目中,我使用Microsoft.Data.Sqlite包来处理 sqlite 数据库。在 Android 平台上,一切正常,但在 iOS 平台上,当应用程序尝试与 sqlite 数据库交互时,我会遇到此异常:

Xamarin iOS:System.ExecutionEngineException。详细信息:在仅 aot 模式下运行时尝试 JIT 编译方法 '(wrapper delegate invoke) void :invoke_calvirt_void_SqliteParameter_Sqlite_Type)'。

奇怪的是,在模拟器上一切正常,但在实际设备上却出现异常。

我该如何解决这个问题?

xamarin.ios xamarin

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