由于 Watson 的包问题抛出异常

Exception Thrown Due to Package Problems With Watson

我想在 Visual Studio 2015 年制作一个使用 IBM 的 Watson Assistant SDK 的 C# 应用程序,可以在 here 中找到有关它的信息。但是,当我转到 运行 我的代码并初始化 AssistantService 的实例时,它会抛出此 System.Security.VerificationException,弹出窗口 window 突出显示正在调用的构造函数,上面写着

An exception of type 'System.Security.VerificationException' occurred in System.Net.Http.Formatting.dll but was not handled in user code Additional information: Method System.Net.Http.CloneableExtensions.Clone: type argument 'System.Net.Http.Headers.MediaTypeHeaderValue' violates the constraint of type parameter 'T'.

我做了一些研究,显然知道问题与 System.Net.Http 包有关,我根据上一个线程中的建议恢复到版本 4.0.0,但无济于事。如果有帮助,我可以提供有关我的设置、代码和错误的更多信息。提前感谢有人能够提供的任何建议。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using IBM.WatsonDeveloperCloud.Assistant.v1;

namespace Watson_Test
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        AssistantService _assistant;

        public MainWindow()
        {
            InitializeComponent(); 
            _assistant = new AssistantService();
            Console.WriteLine("Success!");                 
        }
    }
}

这里是 link 我程序的全部输出。

我想报告这件事。我能够通过将我的所有包更新到当前版本来解决我的问题,因为由于某些依赖冲突它不允许我更新 System.Net.Http。之后,我将 System.IO.Compression 还原为 4.1.0 版,又将 NETStandard.Library 还原为 1.6.0 版,同样是由于依赖性。

现在一切正常,希望这对从事此类工作的其他人有所帮助。