参数无效 - System.argumentexception - 图像处理

时间:2010-12-02 09:03:30

标签: c# image exception

以下一段代码昨天整天运作良好

public Image getImage()
    {
        String connectionString = "URL GOES HERE, CANT POST WORK DATA";
        Image img;
        HttpWebRequest request = WebRequest.Create(connectionString) as HttpWebRequest;
        using (HttpWebResponse response = request.GetResponse() as HttpWebResponse)
        {
            StreamReader reader = new StreamReader(response.GetResponseStream());
            img= Image.FromStream(reader.BaseStream);
        }

        return img;
    }

它从工作提供的网络服务中获取图像,我昨天使用它很多,但现在我得到的是该行标题中所述的例外

img= Image.FromStream(reader.BaseStream);

问题是它为除了我之外的其他人工作(你可以手动输入你的浏览器中的URL并在那里显示图像,这对我来说也不起作用)

有没有人有任何想法?

由于

1 个答案:

答案 0 :(得分:0)

两件事:

1)StreamReader不使用,它只用于文本流,你可以直接使用response.GetResponseStream()

2)Image.FromStream可用的文档here说“你必须在图像的生命周期内保持流打开。”所以你不能用'using'语句创建流,因为它将在街区结束。