Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Visual Studio DialogWindow的InitializeComponent()在Nunit测试中引发异常_C#_Wpf_Nunit_Visual Studio Extensions_Visual Studio Sdk - Fatal编程技术网

C# Visual Studio DialogWindow的InitializeComponent()在Nunit测试中引发异常

C# Visual Studio DialogWindow的InitializeComponent()在Nunit测试中引发异常,c#,wpf,nunit,visual-studio-extensions,visual-studio-sdk,C#,Wpf,Nunit,Visual Studio Extensions,Visual Studio Sdk,我正在为Visual Studio开发一个扩展,它使用Microsoft.VisualStudio.PlatformUI命名空间中的DialogWindow。我的窗口看起来像这样: ... using Microsoft.VisualStudio.PlatformUI namespace views { public partial class MyDialog : DialogWindow { public MyDialog() {

我正在为Visual Studio开发一个扩展,它使用Microsoft.VisualStudio.PlatformUI命名空间中的DialogWindow。我的窗口看起来像这样:

...
using Microsoft.VisualStudio.PlatformUI

namespace views
{
    public partial class MyDialog : DialogWindow
    {
        public MyDialog()
        {
            ...
            InitializeComponent();
        }
    }
    ...
}
我的xaml看起来像这样:

<platformUI:DialogWindow
        ...
        xmlns:platformUi="clr-namespace:Microsoft.VisualStudio.PlatformUI;assembly=Microsoft.VisualStudio.Shell.14.0"
        ...>
    ...
</platformUi:DialogWindow>
窗口是在Nunit setup方法中构造的,但只有构造窗口的第一个方法才会引发此异常。我假设对InitializeComponent()的后续调用由于任何原因都不会通过,因此后续测试仍然通过

我猜引发此异常的原因是因为DialogWindow不打算在Visual Studio的上下文之外使用,但我希望有一个解决方案,因为很难从单元测试中删除此构造。有人对我如何解决这个问题有什么想法吗

Message: System.Windows.Markup.XamlParseException : Provide value on 'System.Windows.Markup.StaticExtension' threw an exception.
  ----> System.Reflection.TargetInvocationException : Exception has been thrown by the target of an invocation.
  ----> System.NotSupportedException : Microsoft.VisualStudio.Shell.Interop.SVsSettingsManager