我可以從Bing地圖獲取URI,但是當我嘗試保存生成的文件(例如.jpg)時,它是空的(例如1 x 1大小)。我已經在事件處理的WPF應用程序中正常工作,但是如何使用控制檯應用程序執行此操作?C#控制檯應用程序 - Bing地圖 - 如何保存輸出
下面是與WPF一起使用的代碼,但在控制檯應用程序中相同的代碼失敗 - 我認爲這一定是因爲該文件保存在事件處理程序中,並且(據我所知),您無法在控制檯應用。
public void vSaveBitmapImage(string sURI, // created with Bing Maps GeocodeServices
string sLocFname)
{
// save file name so event handler knows it
this.sFname = sLocFname;
try
{
BitmapImage bmpImage = new BitmapImage(new Uri(sURI, UriKind.RelativeOrAbsolute));
// setup event handler - file is saved just fine here
bmpImage.DownloadCompleted += vImage_DownloadCompleted;
}
catch (SystemException sex)
{
string s = sex.Message;
}
}
/// <summary>
/// handle the event that an image download has completed
/// </summary>
private void vImage_DownloadCompleted(object sender,
EventArgs e)
{
try
{
JpegBitmapEncoder encoder = new JpegBitmapEncoder();
encoder.Frames.Add(BitmapFrame.Create((BitmapImage)sender));
using (var filestream = new FileStream(this.sFname, FileMode.Create))
encoder.Save(filestream);
}
catch (SystemException sex)
{
string s = sex.Message;
}
}
顯示您的代碼。 –
在你稱之爲系統異常「性」時不成熟地笑了起來。 –
是的,對不起 - 那是一年前遇到過的並且一直在使用它) –