您的位置:首页 > 其它

程序遇见问题汇总

2012-05-03 15:06 337 查看
1,response.ContentType为空的问题

出错代码:HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uriLink);

       HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uriLink);
request.Method = "GET";
request.Timeout = 2000;

response = request.GetResponse();
stream = response.GetResponseStream();

bool bFormat = true;
if (response.ContentType.ToLower().StartsWith("image/png"))
strFile += ".png";
else if (response.ContentType.ToLower().StartsWith("image/jpeg"))
strFile += ".jpg";
else
bFormat = false;

问题描述:由于response.ContentType.ToLower()为空,照成URL地址对象的图片不会被下载。解决方法如下:把流中的数据传递给image对象,然后对image对象进行操作。

2,内存溢出

出错代码: for (int x = x1; x <= x2; x++)
{
for (int y = y1; y <= y2; y++)
{
string strLink = serverURL + "?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=" + layer + "&STYLE=" + style + "&TILEMATRIXSET=" + TILEMATRIXSET + "&TILEMATRIX=" + TILEMATRIX.ToString() + "&TILEROW=" + y.ToString() + "&TILECOL=" + x.ToString() + "&FORMAT=" + FORMAT;
{
SourceURL su = new SourceURL();
su.Url = strLink;
su.CityName = cityname;
su.outPath = strOutputPath;
su.x = x.ToString();
su.y = y.ToString();
su.z = TILEMATRIX.ToString();
su.PicType = pictype;
imgsList.Add(su);
}

}

}

解决办法:减少循环嵌套,从而释放堆栈空间。

3,VS快捷键使用频率太低

照成后果:代码调试困难

VS调试常用快捷键:

Ctrl+E,D ----格式化全部代码
Ctrl+E,F ----格式化选中的代码

CCTRL + K, CTRL + C注释选择的代码
CTRL + K, CTRL + U取消对选择代码的注释

CTRL + G转到…

CTRL + F5运行不调试 F5运行调试

F10跨过程序执行
F11单步逐句执行
CTRL + J列出成员

F7: 查看代码
Shift+F7: 查看窗体设计器

Shift+Alt+Enter: 切换全屏编辑
Ctrl+B,T / Ctrl+K,K: 切换书签开关
Ctrl+B,N / Ctrl+K,N: 移动到下一书签
Ctrl+B,P: 移动到上一书签

Ctrl+F: 查找
Ctrl+Shift+F: 在文件中查找
F3: 查找下一个
Shift+F3: 查找上一个

Ctrl+D,I: 即时窗口
Ctrl+Tab: 活动窗体切换
Ctrl+Shift+N: 新建项目
Ctrl+Shift+O: 打开项目
Ctrl+Shift+S: 全部保存
Shift+Alt+C: 新建类
Ctrl+Shift+A: 新建项
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: