Jac*_*ick 6 c# debugging lambda amazon-web-services .net-core
我一直在查看 Amazon 的 C# 和 Lambda 文档。我尝试过使用他们的 yeoman 生成器和 Visual Studio 工具包。我的目标只是拥有一个包含多个功能的项目,我可以在本地计算机上调试这些功能。问题是,运行调试器会给我一条关于没有项目入口点的消息,考虑到它是作为类库创建的,这是有道理的。
据我所知,开发过程似乎是编写代码、在 AWS 上部署和运行该功能。调试将检查输出并从那里开始。有没有办法实际使用 Visual Studio 的内置调试器?更好的是,我想要一个在我的 Mac 上进行本地调试的工作流程。例如,在 NodeJS 中,我可以使用 Serverless 框架并将 VS Code 中的 launch.json 文件设置为以下内容:
"configurations": [{
"type": "node",
"request": "launch",
"protocol": "legacy",
"name": "run hello",
"program": "${workspaceRoot}/node_modules/.bin/sls",
"args": [
"invoke",
"local",
"--function",
"hello",
"--data",
"{}"
]
}
Run Code Online (Sandbox Code Playgroud)
这允许我模拟数据并使用断点进行调试。
小智 5
使用 Visual Studio,您可以安装AWS 的 AWS .NET Mock Lambda 测试工具
在与解决方案文件相同的目录中使用以下命令:
dotnet tool install -g Amazon.Lambda.TestTool-2.1
Run Code Online (Sandbox Code Playgroud)
Visual Studio 会自动添加调试配置,以便您可以像调试任何其他 .NET 应用程序一样调试项目。
AWS .NET 模拟 Lambda 测试工具GitHub 页面中提供的 VS Code、Rider 和其他说明
我没有遵循这个指南,但它似乎谈论如何在本地调试。如果需要的话,它确实会进一步在 AWS 上进行实际设置:
从要点来看,您似乎为 Lambda 类设置了一个 Main 入口点,用于从 JSON 加载测试文件。这类似于您在 AWS 上设置 Lambda 函数测试的方式。