我是移动开发新手,我正在尝试将我的 .NET Maui 应用程序连接到本地 ASP.NET Core 网站 (API)。
我目前被此异常阻止:
System.Net.WebException: 'java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.'
运行dotnet dev-certs https --trust回报A valid HTTPS certificate is already present.
我当前的代码是:
HttpClientHandler handler = new HttpClientHandler();
handler.ServerCertificateCustomValidationCallback = (message, cert, chain, errors) =>
{
if (cert.Issuer.Equals("CN=localhost"))
return true;
return errors == System.Net.Security.SslPolicyErrors.None;
};
var httpclient = new HttpClient(handler);
var test = await httpclient.PostAsync($"https://10.0.2.2:44393/" + uri, new StringContent(serializedItem, Encoding.UTF8, "application/json"));
Run Code Online (Sandbox Code Playgroud)
但问题是我从未输入 ServerCertificateCustomValidationCallback。
我也尝试过
ServicePointManager.ServerCertificateValidationCallback = (sender, cert, chain, …Run Code Online (Sandbox Code Playgroud) 我无法找到任何有关为 MAUI 应用程序实施本地化的指导。我已经阅读了一些有关本地化 Xamarin 应用程序的信息,但即使经过广泛的网络搜索,也无法将其转发到 MAUI。
谁能给我指出我可能错过的参考资料?
我正在使用 Visual Studio 2022(17.2 Preview 4)来使用适用于 Windows 的 .NET MAUI。
当尝试使用默认项目进行热重载时,会出现错误“热重载无法自动应用您的更改。需要重新构建应用程序才能应用更新。” 我正在使用调试配置,应用程序正常启动。Android 和 Windows 版本都会发生这种情况。我该如何解决这个问题?
这是屏幕截图和警告:
警告 ENC1005 源文件“C:\Users\selim\source\repos\MauiApp1\MauiApp1\MainPage.xaml.cs”的当前内容与构建的源不匹配。调试时对此文件所做的任何更改都不会应用,直到其内容与构建的源匹配。
我完成了 .NET MAUI 应用程序的编码,并且在调试模式下一切正常。尽管我在 .NET MAUI 上使用它,但 Xamarin 的 Entity Framework Core 满足了我所有的数据持久性需求。
我已经制作了 apk 文件并对其进行测试以查看是否一切正常,但结果发现数据库并未创建。一旦我尝试执行数据库操作,我的应用程序就会崩溃。所以我不确定 EF Core 与 .NET MAUI 是否不兼容(但它在调试中运行良好),或者我错过了一些东西。
我按照此处访问的教程进行操作https://learn.microsoft.com/en-us/ef/core/get-started/xamarin下面是我的 DataContext 文件
数据上下文.cs
using Microsoft.EntityFrameworkCore;
using MedbaseRec.Models;
namespace MedbaseRec.Utils
{
public class DataContext : DbContext
{
public DbSet<QuestionPack> QuestionPacks { get; set; }
public DbSet<Question> Questions { get; set; }
public DataContext()
{
SQLitePCL.Batteries_V2.Init();
Database.EnsureCreated();
}
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
string dbPath = Path.Combine(FileSystem.AppDataDirectory, "medbaseapplica.db3");
optionsBuilder.UseSqlite($"Filename={dbPath}");
}
}
}
Run Code Online (Sandbox Code Playgroud) 网络上有许多关于启动新毛伊岛应用程序的文章(和视频)。Microsoft 的 Maui 文档确实讨论了 MauiApp 生命周期,并枚举了为每个受支持的平台触发适当事件的委托。除了创造之外,我找不到任何具体的例子来说明如何启动这些事件。具体来说,如何启动 MauiApp 关闭,是否涉及使应用程序进入睡眠状态或实际将其从内存中删除(根据平台的情况而定)?毛伊岛元数据提到了诸如Quit()、 、和 等程序StopAsync(),CloseWindow()但我无法让其中任何一个程序(至少在调试时)真正明显地终止应用程序。
我一直在我的 Windows 11 计算机上开发一个 .NET MAUI 应用程序,该应用程序运行良好。
当我尝试在 Mac 上编译并运行它并运行最新版本的 Visual Studio for Mac - 17.3 Preview build 1038 时,出现两个错误 - 如下所示:
Source file 'obj/Debug/net6.0-android/resizetizer/sp/maui_splash_image.xml' could not be found (XA2001)
Source file 'obj/Debug/net6.0-android/resizetizer/sp/maui_colors.xml' could not be found (XA2001)
Run Code Online (Sandbox Code Playgroud)
知道是什么原因造成的以及如何解决它吗?
PS 我在我的 PC 上从头开始这个项目,所以它不是从 Xamarin 进行的转换。
将我的视图绑定到视图模型时发生。
错误描述:
System.MissingMethodException: 'No parameterless constructor defined for type 'yournamespace.view.pagename'.'
Run Code Online (Sandbox Code Playgroud) .NET MAUI 能够使用 SVG 图像,这非常好,但我无法设置 SVG 图像的颜色。官方文档声明我可以在项目文件中使用 TintColor 但这不是一个好的解决方案,因为我希望能够根据某些条件使用不同的颜色。那么我们能以某种方式指定 SVG 图像的颜色吗?
我正在处理 .NET MAUI Preview 7 项目,我需要创建一个表/数据网格,但我看到在 XAML 文件中,没有“Table”、“DataGrid”或“DataView”的标签。
我只找到了“网格”,它用于将表单划分为行和列。
我应该使用什么来创建显示数据的表(数据绑定)?
谢谢
我似乎无法找到如何获取屏幕的屏幕尺寸。我尝试了 Xamarin 表单方式:
mainDisplayInfo.Height;
Run Code Online (Sandbox Code Playgroud)
Windows 版 Maui 不能这样工作,有人知道我该怎么做吗?谢谢!
maui ×10
.net ×4
c# ×4
xamarin ×4
.net-maui ×3
xaml ×2
asp.net-core ×1
lifecycle ×1
localization ×1
maui-windows ×1
shutdown ×1
sleep ×1
sqlite ×1