我一直在开发一个 asp 网络应用程序,它涉及用户注册一个人的详细信息,包括该人的图像。细节/图像的文件名存储在 SQL 数据库中,图像文件名存储在 NVARCHAR
列中,而不是将实际图像存储在数据库中。
我创建了一个目录 C:\Images,应用程序将在该目录中存储图像文件。该应用程序将图像移动到此位置时可以正常工作,但是当我打开将显示详细信息/图像的页面时,图像永远不会呈现。
我在开发过程中通过将图像存储在作为项目一部分的文件夹中来解决这个问题,但是在将项目发布到服务器之后,应用程序拒绝将图像保存在中的任何目录中>C:\Inetpub\wwwroot\
.
所以我需要找出为什么当图像存储在不在项目内的文件夹中时它们无法呈现。
我检查了 HTML 页面的源代码,它也指向正确的位置和文件名:
img id="ctl00_MainContent_CandidateImage" src="C:\Images\applicant11.jpg" alt="Candidate Image" style="border-width:1px;border-style:solid;height:208px;width:208px;"
页面隐藏代码在下面的代码中呈现图像:
// CandidatePhoto filename retrieved from DB.
CandidateImage.ImageUrl = "C:\\Images\\" + CandidatePhoto;
有没有人有什么想法?
干杯!
最佳答案
当它在浏览器上呈现时,您实际上是在告诉它在客户端的 c: 驱动器上查找要显示的图像...
我不知道为什么你不能用 wwwroot 保存,这可能只是一个权限问题,可以解决,或者你可以在你的站点中创建一个指向你的图像文件夹的虚拟目录并使用它页面中的虚拟目录 URL。
关于c# - 图像未在 asp webapp 中解析 (c#),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2492624/