我刚开始使用Windows手机"冒险".我想写一些应用程序,但我需要像Local DataBase这样的东西.我该怎么用?我找不到任何解决方案.我尝试过本地数据库,但它在WP 8.1上不可用,我还找到了一个关于使用json的教程,但是这个教程也已经过时了,它不适用于8.1.我只想写一个基于DataBase的小应用程序,其中有一个表可以读取和写入.你可以给我发一个文章链接来解决我的问题吗?
提前致谢.
我很难尝试使用Azure AD B2C来验证My Web API.我将从一些背景开始
我创建了使用Azure AD B2C对用户进行身份验证的移动应用程序.我正在创建一个显示此URL的WebView:

用户被要求登录azure广告,如果登录数据成功,我收到包含访问令牌的响应 - 这部分顺利进行,一切正常.
现在我想创建后端Web Api.我创建了ASP NET Core Web应用程序,它允许我选择身份验证方法.我选择Azure AD身份验证,以便模板为我生成所有必需的数据.代码中的相关部分在这里:

我更新了所有必需的配置属性以匹配我的azure设置.此时我希望能够使用我在移动应用程序上收到的访问令牌来调用API.我在本地运行移动应用程序,登录,接收访问令牌,复制它并尝试使用邮递员(带有授权标题"Bearer ...")来调用我的web api(在IIS express中托管).不幸的是没有运气 - 我收到401以下标题:
Bearer error ="invalid_token",error_description ="找不到签名密钥"
我认为令牌足以授权API - 我理解这是OAuth的一个重点.我错过了什么吗?我应该有一些额外的配置吗?我注意到配置缺少登录策略(这似乎是AD B2C名称所要求的,所以我尝试添加:
var validationParameters = new TokenValidationParameters
{
AuthenticationType = "MY_POLICY",
};
app.UseJwtBearerAuthentication(new JwtBearerOptions
{
Authority = Configuration["Authentication:AzureAd:AADInstance"] + Configuration["Authentication:AzureAd:TenantId"],
Audience = Configuration["Authentication:AzureAd:Audience"],
TokenValidationParameters = validationParameters
});
Run Code Online (Sandbox Code Playgroud)
但这也行不通.将不胜感激任何帮助.
编辑
我在Visual Studio日志中发现以下错误:
持票人未经过认证.失败消息:IDX10501:签名验证失败.无法匹配'kid':'...'
我在Windows窗体中有一个旧的应用程序,它在许多地方对数据库进行一些搜索.有时需要花费很多时间,因此我决定在wpf中创建一个加载屏幕,以向用户显示某些内容正在单独的线程中加载.基本上它只是一个带有加载指示器的全透明窗口(一个转动圆圈).在我的主机和我的虚拟机上一切正常,但当我试图将它部署到我们的演示环境时,就像 - 它开始加载指示器显示,几秒钟之后消失,应用程序就像永远一样停止响应.我的第一个想法是,它是GPU加速的问题,它无法处理透明度,但它被显示几秒钟,所以它不是问题.所以我很可能做坏事.下面你可以看到我的代码,
public class LoadingManager
{
public LoadingManager()
{ }
public LoadingManager(string LoadingText)
{
loadingText = LoadingText;
}
private string loadingText = "Please wait ..";
private Thread thread;
private bool ThreadReadyToAbort = false;
private BusyIndicatorView loadingWindow;
public void BeginLoading()
{
this.thread = new Thread(this.RunThread);
this.thread.IsBackground = true;
this.thread.SetApartmentState(ApartmentState.STA);
this.thread.Start();
}
public void EndLoading()
{
if (this.loadingWindow != null)
{
this.loadingWindow.Dispatcher.BeginInvoke(DispatcherPriority.Normal, (Action)(() =>
{ this.loadingWindow.Close(); }));
while (!this.ThreadReadyToAbort) { }; // I also tried to remove this while but it …Run Code Online (Sandbox Code Playgroud) 我有一个框架和几页的窗口.当窗口加载时,框架将导航到欢迎页面,当我单击欢迎页面内的按钮时,我希望父框架导航到另一个页面.要做到这一点,我需要从页面级访问父框架,但我无法弄清楚如何做到这一点.我尝试下面的代码,但它返回null:
private void myButton_click(object sender, RoutedEventArgs e)
{
SecondPage secPage = new SecondPage();
((this.Parent) as Frame).Navigate(secPage);
}
Run Code Online (Sandbox Code Playgroud)
我检查了'this.parent'返回的是什么,它是null.如何获得父框架,以便我可以从一个页面导航到另一个页面?
我有一个禁用排序的数据网格.我想要实现的是 - 通过单击列标题我想要选择此列中的所有单元格(选择整列).我已经添加EventSetter到我DataGridColumnHeader的绑定一些方法到Click事件,但我不知道应该如何编写此方法.有任何想法吗?
我的代码:
private void columnHeaderClick(object sender, RoutedEventArgs e)
{
var columnHeader = sender as DataGridColumnHeader;
if (columnHeader != null)
{
if (dgDane.SelectedCells != null)
{
dgDane.SelectedCells.Clear();
}
foreach (var item in dgDane.Items)
{
dgDane.SelectedCells.Add(new DataGridCellInfo(item, columnHeader.Column));
}
dgDane.Focus();
}
}
Run Code Online (Sandbox Code Playgroud)
我编辑了代码,上面的这个工作正常(感谢@nit).我更加关注DataGrid因为这是必要的.
c# ×5
wpf ×3
asp.net-core ×1
azure ×1
azure-ad-b2c ×1
database ×1
datagrid ×1
navigation ×1
parent ×1