我试图创建一个聊天机器人然后将其部署在我的帐户中,问题是我有时需要在讨论中将文档作为响应发布,并且绝对文件路径不起作用机器人在天蓝色中解密,但它确实在我的本地主机中工作。
var imagePath = HttpContext.Current.Server.MapPath("~/Files/mutuelle.pdf");
这是生成文件路径的代码。当部署在azure时,链接到文件是:
的https://*******.azurewebsites.net/dev/wwwroot/Files/mutuelle.pdf
我想问题是imagePath变量只是
的https://*******.azurewebsites.net/Files/mutuelle.pdf
所以我在azure(dev / wwwroot /)中生成绝对文件路径时遇到问题。 有人可以告诉我解决方案吗?
答案 0 :(得分:1)
就个人而言,我使用以下命令通过相对路径访问Azure上的文件,我的文件位于我的VS项目的Credential文件夹中,一切正常。
System.Web.HttpContext.Current.Server.MapPath("..\\Credential\\XXX.json");
答案 1 :(得分:0)
您可以在项目中创建一个文件夹说/内容,并保留在该文件夹中发送所需的所有文件。
部署到Azure后,您可以将托管的URL添加到web.config文件中
<appSettings>
<add key="HostedUrl" value="https://**.azurewebsites.net/Content/" />
<appSettings>
然后在对话框中,您可以将图像路径设置为:
private static string contentUrl = ConfigurationManager.AppSettings["HostedUrl"];
var imageUrl = contentUrl + "imageName.png";