Xamarin.Forms Visual Studio 2017 Pro 中的 Azure
Xamarin.Forms Azure in Visual Studio 2017 Pro
我一直在观看 Joe Montemagno 关于 Xamarin 和 Azure 的演讲
(https://channel9.msdn.com/Events/Visual-Studio/Visual-Studio-2017-Launch/T104)
我遵循了视频中解释的所有步骤(我认为它不完整,或者至少我有点傻),并且在 UWP 中调试应用程序时我无法在 Azure 中验证应用程序(在 Windows 10 PC或者来自 Lumia950,我还没有尝试 Android)。基本上它是默认创建的应用程序,检查了 AzureMobileAppUrl,我正在尝试执行。
我遵循的步骤:
- 创建了一个新项目,跨平台->多平台应用程序(Xamarin.Forms 或本机)
- 在新跨平台应用程序的对话框中 -> Master Detail Options: Xamarin.Forms, PCL 并勾选 Host in cloud.
- 我已经为这个应用程序创建了 azure 应用程序服务(从 VS2017 自动创建,并在 portal.azure.com 进行了检查)
- 当我发布 Project MobileAppService 时,我从 VS 得到了正确的结果,但是当发布结束并且浏览器打开时,站点 returns 一个错误,典型的 ASP.NET 错误 "Runtime error".
当我 运行 应用程序时,第一个屏幕是:
然后我按下登录按钮,如果我调试应用程序,我可以在 TryLoginAsync 函数中看到 dataStore.UseAuthentication returns false,但这很奇怪,因为数据存储对象类型为AzureDataStore,来自VS说它在上下文中不存在,但是代码中没有错误,并且未在azure中验证,应用程序停留在LoginPage。
- 而且,显然,在 SignIn 函数中,执行 TryLoginAsync 后,Settings.IsLoggedIn 为 false。
- 在app.xaml.cs Portable Project 中检查 AzureMobileAppUrl 是否正确
- 在 Azure->App Services->MyAppService(AppAzureTest)-> Introduction-> 我可以看到来自调试应用程序的请求,所以我认为至少应用程序是 运行ning
任何人都可以帮助我吗?。除了视频,我还没有找到更多文档。任何人都知道我在哪里可以找到有效的文档?因为我在 Xamarin 找到的文档对 Visual Studio 2017 无效。
更新:
我在 Azure 中测试,我启用了 RemoteErrors,现在我从 AutoMapper 收到错误:
Could not load file or assembly 'AutoMapper' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
好的,我需要在全新的 VS2017 安装中更新 nuGet AutoUpdate 包,现在网站在 azure 中工作没有错误,但我继续之前的错误。
结束更新
谢谢
好的,我用以下方法解决了这个问题:
Authentication and authorization for API Apps in Azure App Service
我一直在观看 Joe Montemagno 关于 Xamarin 和 Azure 的演讲 (https://channel9.msdn.com/Events/Visual-Studio/Visual-Studio-2017-Launch/T104) 我遵循了视频中解释的所有步骤(我认为它不完整,或者至少我有点傻),并且在 UWP 中调试应用程序时我无法在 Azure 中验证应用程序(在 Windows 10 PC或者来自 Lumia950,我还没有尝试 Android)。基本上它是默认创建的应用程序,检查了 AzureMobileAppUrl,我正在尝试执行。
我遵循的步骤:
- 创建了一个新项目,跨平台->多平台应用程序(Xamarin.Forms 或本机)
- 在新跨平台应用程序的对话框中 -> Master Detail Options: Xamarin.Forms, PCL 并勾选 Host in cloud.
- 我已经为这个应用程序创建了 azure 应用程序服务(从 VS2017 自动创建,并在 portal.azure.com 进行了检查)
- 当我发布 Project MobileAppService 时,我从 VS 得到了正确的结果,但是当发布结束并且浏览器打开时,站点 returns 一个错误,典型的 ASP.NET 错误 "Runtime error".
当我 运行 应用程序时,第一个屏幕是:
然后我按下登录按钮,如果我调试应用程序,我可以在 TryLoginAsync 函数中看到 dataStore.UseAuthentication returns false,但这很奇怪,因为数据存储对象类型为AzureDataStore,来自VS说它在上下文中不存在,但是代码中没有错误,并且未在azure中验证,应用程序停留在LoginPage。
- 而且,显然,在 SignIn 函数中,执行 TryLoginAsync 后,Settings.IsLoggedIn 为 false。
- 在app.xaml.cs Portable Project 中检查 AzureMobileAppUrl 是否正确
- 在 Azure->App Services->MyAppService(AppAzureTest)-> Introduction-> 我可以看到来自调试应用程序的请求,所以我认为至少应用程序是 运行ning
任何人都可以帮助我吗?。除了视频,我还没有找到更多文档。任何人都知道我在哪里可以找到有效的文档?因为我在 Xamarin 找到的文档对 Visual Studio 2017 无效。
更新: 我在 Azure 中测试,我启用了 RemoteErrors,现在我从 AutoMapper 收到错误:
Could not load file or assembly 'AutoMapper' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
好的,我需要在全新的 VS2017 安装中更新 nuGet AutoUpdate 包,现在网站在 azure 中工作没有错误,但我继续之前的错误。
结束更新
谢谢
好的,我用以下方法解决了这个问题: Authentication and authorization for API Apps in Azure App Service