我怎样才能让我的代码获取图像“_filename.JPG”而不仅仅是“_filename.jpg”?
string picUrl = "http://MyServer/" + _filename + ".jpg";
Image webImage = global::MyProject.Properties.Resources.ImageNotFound1;
try
{
WebRequest requestPic = WebRequest.Create(picUrl);
WebResponse responsePic = requestPic.GetResponse();
webImage = Image.FromStream(responsePic.GetResponseStream());
}
最佳答案
服务器强制区分大小写 - 您的客户端代码无法影响服务器的行为。 HTTP 服务器要求路径的精确大小写是不常见的,但对于基于 Unix/Linux 的服务器来说很容易获得行为,并在 Uri RFC 中描述了这种方式。 .
如果服务器区分大小写,您的选项:
- 询问文件的确切名称(可能服务器提供了一种获取确切文件名的方法。即通过解析某些 HTML 页面)
- 提前知道名称的大小写(即在服务器上仅使用小写名称)。
- 为名称中的每个字符生成部分/所有大小写组合(即尝试已知的大小写,例如 .jpg/.JPG),但这可能需要很长时间。
- 重新配置服务器以接受不区分大小写的文件名
- 查看服务器是否支持某种提示来进行不区分大小写的文件检索(不太可能,但是......)
关于c# - 从服务器获取图像,同时忽略文件的大小写敏感性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15329925/