无法打开包含文件:'cpprest/ws_client':没有那个文件或目录

Cannot open include file: 'cpprest/ws_client': No such file or directory

我正在开发一个使用 C++ RESTAPI 的项目。我正在学习 Casablanca 教程。根据该教程,我使用 NuGet 包管理器将 Casablanca 添加到我的 C++ 项目中。我正在使用 Visual Studio 2015 企业版。但是当包含以下文件时,它会在 #include <cpprest/ws_client> 上显示错误。我已经设置了附加包含目录,附加库目录形成项目属性如下。

附加包含目录 <project_dir>\packages\cpprestsdk.v140.windesktop.msvcstl.dyn.rt-dyn.2.9.1\build\native\include

其他图书馆目录 <project_dir>\packages\cpprestsdk.v140.windesktop.msvcstl.dyn.rt-dyn.2.9.1\lib

我在这里添加了实际的屏幕截图。如何解决这个问题?

#include <iostream>
#include <cpprest/http_client.h>
#include <cpprest/filestream.h>
#include <cpprest/http_listener.h>              // HTTP server
#include <cpprest/json.h>                       // JSON library
#include <cpprest/uri.h>                        // URI library
#include <cpprest/ws_client>                    // WebSocket client
#include <cpprest/containerstream.h>            // Async streams backed by STL containers
#include <cpprest/interopstream.h>              // Bridges for integrating Async streams with STL and WinRT streams
#include <cpprest/rawptrstream.h>               // Async streams backed by raw pointer to memory
#include <cpprest/producerconsumerstream.h>     // Async streams for producer consumer scenarios

using namespace utility;                    // Common utilities like string conversions
using namespace web;                        // Common features like URIs.
using namespace web::http;                  // Common HTTP functionality
using namespace web::http::client;          // HTTP client features
using namespace concurrency::streams;       // Asynchronous streams
using namespace web::http::experimental::listener;          // HTTP server
using namespace web::experimental::web_sockets::client;     // WebSockets client
using namespace web::json;                                  // JSON library 

(我也尝试过 visual Studio 2017,2013。但结果是一样的。)

您没有正确包含头文件,因此无法解析引用:使用 #include <cpprest/ws_client.h> 而不是 #include <cpprest/ws_client> 将对您有效。