c# - 如何在 C# 的 Web 应用程序中从服务器加载图像

标签 c# asp.net image

我实际上有一个 C# winform 应用程序,它使用 Image 对象和函数 Fromfile 从我的计算机 C://images/... 加载图像。

Image.FromFile(Path);

但在我的网络应用程序 (ASP) 中

<asp:Image ID="viewPhoto" runat="server" Width="550px" Height="400px"/>

我使用属性 ImageURL。

viewPhoto.ImageURL = Path

但问题是它没有找到正确的路径,因为用这种方式。路径将为 http://localhost:3656/C://images....

我想直接从我的服务器加载图像,以便为我的两个应用程序提供正确的路径。(web ASP 和 winform)

Image.FromFile(/images/myimage.jpg)

这实际上不起作用,因为程序在此路径中找不到任何照片。

最佳答案

首先,我认为您要显示的图像不在 Web 应用程序文件夹/虚拟目录中。将图像文件夹移动到您的 Web 应用程序文件夹,然后使用:

Page.ResolveClientUrl("images/test.jpg");

或者对于服务器端:

Server.MapPath("images/test.jpg");

如果您不想将图像移动到您的 Web 文件夹,那么您唯一的选择是编写 HttpHandler,它将从 C:\images 文件夹中读取图像并将其传输到客户端。这还需要您的 Web 应用 IIS 用户获得一些特定权限才能访问 Web 应用范围之外的某些文件夹。

您可以在此处查看 HttpHandler 示例:Thumbnailer HTTP Handler

关于c# - 如何在 C# 的 Web 应用程序中从服务器加载图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5488456/

相关文章:

c# - CancellationTokens 可以跨 AppDomains 使用吗

javascript - 如何将图像与更新 JSON/API key 数据链接并将其显示到 HTML 网页

Android ImageView 重力

c# - 如何在不使用泛型的情况下创建泛型变量?

c# - 需要从 IEnumerable<item> 获取 id

c# - 长后台进程刷新 ui wpf

c# - ASP.NET Razor 文件上传

c# - 刷新一个按钮

c# - 转换为 12 小时格式不起作用

java - 有什么方法可以轻松地在 Java Applet 中显示非常大的图像(使用较少的部分)?