azure - Bot Framework 从 VS 2019 发布和部署到 Azure - 缺少文件
问题描述
我使用外部资源(.lg 和 .dialog 文件)编写了一个 C# web bot,我认为它没有与代码一起部署。我从 VS2019 部署,右键单击并“发布/天蓝色/Azure 应用程序服务(Windows 10)”到已经存在的应用程序服务中。
这是最糟糕的,几乎什么都不问,我看不到如何将文件添加到发布包中。该机器人无法在 azure 门户上运行,几个小时后我发现日志文件在哪里,并看到它说无法打开 .lg 文件,因为它丢失了。
在自适应对话框构造函数中:
this.Generator = new TemplateEngineLanguageGenerator(Templates.ParseFile(Configuration["Dialog.Templates.Root"]));
在我的 appsettings.json 中:
"Dialog.Templates.Root": "Templates/root-dialog-templates.lg",
如何在部署期间添加要复制的文件?
感谢您的任何建议和帮助!
解决方案
您可以在文件中包含类似此示例的.csproj
内容,假设您的.lg
,.dialog
文件位于Dialogs
文件夹下
<ItemGroup>
<None Remove="Dialogs\**\*.lg" />
<None Remove="Dialogs\**\*.dialog" />
</ItemGroup>
<ItemGroup>
<Content Include="Dialogs\**\*.lg">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<Content Include="Dialogs\**\*.dialog">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
</ItemGroup>
这样,您将在与项目内容根目录(通常是当前目录)相关的同一文件夹中找到已部署的文件。
推荐阅读
- flask - 如果浏览器关闭(会话),我如何使用flask socketio保存和显示现有进度状态
- spring - 当我输入时,Spring jpa 自动完成功能没有出现
- reactjs - React typescript for added antdesign (antd) modal 不工作
- excel - 无法从 Excel 工作表中正确读取值
- reactjs - react-testing-library 模拟 axios.create({}) 实例
- python - 我只能检查二维数组的第一列
- python - DeepSpeech 给出了不好的结果
- kubernetes - 当文档说不应该时,microk8s clusterIP 服务似乎正在执行源 NAT
- java - 用于在 Java 中的 Hypergraph 上实现节点的 JSON 结构
- excel - 如何更改引用输入框的变体?