程序遇见问题汇总
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: 新建项
出错代码: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: 新建项
相关文章推荐
- sikuli 相关遇见过的问题汇总
- ctp linux程序编写问题汇总
- 对于Intel汇编语言程序设计中程序编译出现问题及解决方案汇总
- STC单片机程序下载问题汇总
- 微信小程序常见问题汇总
- Eclipse 开发 C++ 程序问题汇总
- 有关Libssh2的Win32程序开发中遇到的若干问题的汇总 .
- 将DLL程序集加入GAC后的一系列问题汇总,及解决方法
- VS2015 Update2 构建 Android 程序问题汇总
- sikuli 相关遇见过的问题汇总
- SerialPort 做winform程序的问题汇总与解决
- 微信小程序开发遇见的问题之一
- IOS问题汇总:2014-12-10 在程序中调用Safari和发起电话呼叫
- 使用STLINK下载程序到STM8S103问题汇总
- 微信小程序开发完工+问题汇总
- phpBB论坛程序:老革命遇见新问题
- 调试asp.net程序遇见的三个常见问题及其解决办法
- 开发中遇见的问题汇总
- Eclipse调试java程序遇见的无伤大雅的小问题
- xcode 编译旧程序遇到的一些问题解决汇总