通常,创建数据库后的第一步开发人员是创建一个可以执行该数据库的REST API,该API可以执行,读取,更新和删除(CRUD)操作。此存储库旨在教您并为您提供一个入门项目(在C#中使用ASP.NET)来生成这样的REST API。在数据库中安装了Travel-sample bucket后,您可以运行此应用程序,该应用程序是带有Swagger文档的REST API,以便您可以学习:
完整的文档可以在Couchbase开发人员门户网站上找到。
如果您正在寻找使用ASP.NET最小API的快速启动,则可以在此存储库中找到它。
要运行这个预建项目,您将需要:
我们将浏览运行应用程序所需的不同步骤。
git clone https://github.com/couchbase-examples/aspnet-quickstart.git cd src/Org.Quickstart.API
dotnet restore.NET的couchbase SDK包括一个名为Couchbase.Extensions.DependencyInjection的Nuget软件包,该套件是为ASP.NET之类的环境而设计的,该环境采用配置来连接到CouchBase,并自动登记可以在代码中使用的接口,以执行完整的CRUD (create, read, update, delete) 。
要了解有关连接到Capella群集的更多信息,请按照说明进行操作。
具体来说,您需要执行以下操作:
与数据库通信的所有配置都存储在appSettings.development.json文件中。这包括连接字符串,用户名,密码,存储键名和范围名称。默认用户名被认为是Administrator ,默认密码假定为P@$$w0rd12 。如果这些在您的环境中不同,则需要在运行应用程序之前将它们更改。
"Couchbase" : {
"BucketName" : " travel-sample " ,
"ScopeName" : " inventory " ,
"ConnectionString" : " couchbases://yourassignedhostname.cloud.couchbase.com " ,
"Username" : " Administrator " ,
"Password" : " P@ssw0rd12 " ,
"IgnoreRemoteCertificateNameMismatch" : true ,
"HttpIgnoreRemoteCertificateMismatch" : true ,
"KvIgnoreRemoteCertificateNameMismatch" : true
}
注意:连接字符串期望
couchbases://或couchbase://part。
此时,我们已经安装了依赖项,加载了旅行样本数据并将应用程序配置为凭据。该应用程序已准备就绪,您可以运行它。
cd src/Org.Quickstart.API
dotnet run cd aspnet-quickstart
docker build -t couchbase-aspnet-quickstart . cd aspnet-quickstart
docker run -e DB_CONN_STR= < connection_string > -e DB_USERNAME= < user_with_read_write_permission_to_travel-sample_bucket > -e DB_PASSWORD= < password_for_user > -p 8080:8080 couchbase-aspnet-quickstart您可以在http:// localhost:8080/index.html上访问该应用程序
应用程序启动后,您可以在日志上查看应用程序的详细信息。

该应用程序将在您的本地计算机(http:// localhost:8080/index.html)的端口8080上运行。如果您转到浏览器中的URL,您会发现API的夸张文档。该演示中使用Swagger文档来展示不同的API端点以及如何调用它们。有关Swagger文档的更多详细信息可以在附录中找到。

要运行标准集成测试,请使用以下命令:
cd ../Org.Quickstart.IntegrationTests/
dotnet restore
dotnet build
dotnet test 对于此QuickStart,我们使用分别包含样品机场,航空公司和航空公司路线的三个集合,机场,航空公司和路线。路线集合将机场和航空公司连接,如下图所示。我们在快速启动中使用这些连接来生成直接连接的机场,并连接到目的地机场的航空公司。请注意,这些只是突出显示如何使用SQL ++查询来加入集合的示例。

如果您想在API中添加另一个实体,则这些是要遵循的步骤:
Controllers文件夹中的文件中的路由,类似于现有路由。Org.Quickstart.IntegrationTests AirportTests.cs夹中的新文件中添加新路由的测试。如果您使用自动管理的scouchbase群集运行此快速启动,则需要将旅行样本数据存储库加载到群集中并生成存储桶的凭据。
您需要在源文件夹中更新AppSettings.development.json文件中的连接字符串和凭据。
注意:在运行ASP.NET应用程序之前,必须安装和运行Couchbase。
Swagger文档提供了API的清晰视图,包括端点,HTTP方法,请求参数和响应对象。
单击单个端点以将其展开并查看详细信息。这包括端点的描述,可能的响应状态代码以及所接受的请求参数。
您可以通过单击端点旁边的“尝试”按钮来尝试API。
参数:如果端点需要参数,则Swagger UI提供供您填写的输入框。这可能包括路径参数,查询字符串,标头或邮政/put请求的主体。
执行:输入所有必要的参数后,您可以单击“执行”按钮以进行实时API调用。 Swagger UI将将请求发送到API并直接在文档中显示响应。这包括响应代码,响应标头和响应主体。
Swagger使用模型记录请求和响应机构的结构。这些模型使用JSON模式定义了预期的数据结构,并有助于理解要发送和期望的数据。