小编Seb*_*olg的帖子

UWP App在启动时崩溃

我们开发了一个UWP应用程序,可以在大多数设备上正常运行.但是,客户已使用Windows 10 1511管理设备,并且应用程序在启动后立即崩溃.我们无法将VS调试器附加到它,因此我们使用windbg来启动和破坏应用程序.从我所看到的,下面的windbg的输出是应用程序崩溃的地方.

应用程序启动事件被剥离到几乎为空,因此启动后没有代码运行但仍然应用程序崩溃.

知道如何进一步跟踪这个吗?

谢谢

ModLoad: 00007ffe`ec020000 00007ffe`ec27f000   C:\Windows\SYSTEM32\dwrite.dll
ModLoad: 00007ffe`cfef0000 00007ffe`d0075000   C:\Windows\System32\Windows.Globalization.dll
(241c.2278): Windows Runtime Originate Error - code 40080201 (first chance)
(241c.2278): Windows Runtime Originate Error - code 40080201 (first chance)
windows\dxaml\xcp\components\deferral\customwriterruntimeobjectcreator.cpp(222)\Windows.UI.Xaml.dll!00007FFED0E99DA7: (caller: 00007FFED0B7A503) Exception(1) tid(2278) 80004005 Unspecified error
(241c.2278): C++ EH exception - code e06d7363 (first chance)
(241c.2278): C++ EH exception - code e06d7363 (first chance)
windows\dxaml\xcp\core\core\elements\style.cpp(582)\Windows.UI.Xaml.dll!00007FFED0D851D9: (caller: 00007FFED0BFB365) ReturnHr(1) tid(2278) 80004005 Unspecified error
windows\dxaml\xcp\components\deferral\customwriterruntimeobjectcreator.cpp(113)\Windows.UI.Xaml.dll!00007FFED0DEEE15: (caller: 00007FFED0B0B954) Exception(2) tid(2278) 80004005 Unspecified error
(241c.2278): C++ EH exception …
Run Code Online (Sandbox Code Playgroud)

c# windbg win-universal-app uwp

7
推荐指数
1
解决办法
1855
查看次数

当调用者需要特定的构造函数签名时使用构造函数注入

我是 .NET C# 和 autofac 中 DI 的新手,当我无法完全控制调用方时,我无法理解如何使用 DI。

有两种情况我无法理解。

场景 1:调用者需要一个默认构造函数(不带任何参数)

当我仍然想在构造类时注入一些服务接口时,如何处理这种情况?我正在考虑构造函数链接,但这意味着我必须知道具体类型并且它围绕 DI 的思想工作。(至少我认为)。

public class ServiceWorker
{
    IService _service;

    public ServiceWorker(IService service) 
    { 
        _service = service
    }
}

public class Caller
{
    // No way to change this. 
    var serviceWorker = new ServiceWorker();
}
Run Code Online (Sandbox Code Playgroud)

场景 2:调用者需要特定的构造函数签名(例如

同样的问题在这里。当调用者期望构造函数签名完全匹配时,如何注入额外的依赖项?

我认为我在理解这个概念时的主要问题是,当并非所有内容都是由 DI(调用者)构建时,我不知道如何仅部分地进行 DI

public class ServiceWorker
{
    IService _service;

    public ServiceWorker(string name, string id, IService service) 
    { 
        _service = service
    }
}

public class Caller
{
    // No way to change …
Run Code Online (Sandbox Code Playgroud)

c# dependency-injection inversion-of-control autofac

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

使用新的基于AAD的访问控制通过Web浏览器通过URI访问Blob文件

随着宣布Azure存储支持基于Azure Active Directory的访问控制,是否可以仅通过URI通过Web浏览器提供Blob(特定文件)?

我想简化的用例是使一些人可以访问blob上的文件,而无需将SAS令牌附加到URI。相反,当尝试在其Web浏览器中打开普通URI时启动典型的OAuth流程将是很不错的选择。

就我而言,我们希望授予用户通过基于Microsoft Bot框架构建的支持bot上载到blob存储的文件的权限。支持代理应该在他们选择的Web浏览器中访问我们支持系统中的链接。

是此公告支持的该用例,还是仅适用于编码的OAuth流,这意味着我们仍然必须实现一些代码?

如果是这样,是否有一个很好的示例,说明如何从Azure Function应用启动OAuth流程并使用生成的令牌下载文件(通过Azure Storage REST终结点)?

azure azure-storage azure-active-directory botframework azure-functions

5
推荐指数
2
解决办法
1174
查看次数