下载.Net 4源码
DataGrid枚举值更新错误的原因
OpenExpressApp之前使用了DataGrid来作为列表控件,在内置支持的属性编辑方式中介绍了枚举类型的使用,之前在.Net35下都是好的,一切正常,但是前一阵子OpenExpressApp升级到了.Net4了,对于枚举属性的列表控件编辑时会出现错误,更新一个枚举值后,控件显示有错误,如下所示:
查看堆栈,发现只能看到一个代码段,其余的都是.Net Framework内部的代码,看了代码方法,但是不太明白,我想最好的办法就是查看代码了,以前都是用Reflector查看代码,但是那只是静态的看 代码,想起在VS2008下可以查看.Net Framework源码,我何不在VS2010下试试呢,于是开始去找Net4源码。
下载.Net 4源码
在 http://referencesource.microsoft.com/netframework.aspx 中选择.Net4下载
准备调试
网上介绍了一些调试框架代码的设置,我试了一下,但是都会去服务器下载,试过多个方法后,最终按照如下方法进行可以顺利的进行调试
- 安装后只有两个目录【Source】和【Symbols】
- 配置Option,去除【Enable Just My Code】,记住也不要设置【Enable .Net Framework source stepping】(否则允许后总会去服务器下载pdb文件)
- 配置Debug/Symbols(根据自己安装路径设置)
- 拷贝pdb到【Symbols\Cache\MicrosoftPublicSymbols】目录。我之前试验时发现下载的pdf会放到【MicrosoftPublicSymbols】目录,所以我们需要把安装路径下的pdb文件都拷贝到这个目录
调试代码
- 运行代码,开始调试,记住只能通过Call Stack设置断点
- 一步一步Step into调试后,发现事故发生地
public class EnumConverter : IValueConverter{public object Convert(object value, Type targetType, object parameter, CultureInfo culture){return new EnumViewModel((Enum)value).Label;}public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture){ return null; //这句话错误,没有返回正确的值 }}修改代码如下:
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture){return EnumViewModel.LabelToEnum(value.ToString(), targetType);}
回顾
- 多实验,找到可能性
- 通过.Net Source能够方便调试和定位bug
欢迎转载,转载请注明:转载自周金根 [ http://zhoujg.cnblogs.com/ ]
下载.Net 4源码相关推荐
- 在Ubuntu 14.04 64bit上下载更新x265源码
x264,x265,vpx这三个开源的视频编码器可以说是当今"最火"的视频编码器.x264现在占据着H.264视频编码器的半壁江山:x265则是目前实现H.265标准最好的开源视频 ...
- Asp.Net Web Api 2 实现多文件打包并下载文件示例源码
前言 最近由于工作和个人事务,站点也好久没更新了,但这并不影响我对.NET的热情.站点的更新工作还是得想办法抽时间来完成的. 提要 今天利用中午的时间来写一篇关于Asp.Net Web Api下载文件 ...
- [HOW TO]-下载android官方源码
介绍下载android官方源码的方式: 使用每月更新的初始化包 传统初始化方法 1.使用每月更新的初始化包 下载初始化包->repo sync wget -c https://mirrors.t ...
- Linux下载安装一个源码包
下载一个安装包除了yum和rpm之外我们还可以下载源码包 编译并安装 首先下载所有的源码包一定要去官网,为了就是防止源码包被第三方编译 例如我们今天安装一个httpd的源码包,也就是经常说的apach ...
- 使用代理下载android系统源码和SDK
** 使用代理下载android系统源码和SDK ** 谷歌被墙后,如何下载android源码和sdk?使用代理.步骤如下: 寻找可用代理 先在这里找一个可用的代理服务器:http://www.xic ...
- Maven引入依赖后自动下载并关联源码(Source)
http://justke123.iteye.com/blog/981627 好多用 Maven 的时候会遇到这样一个棘手的问题: 就是添加依赖后由于没有下载并关联源码,导致自动提示无法出现正确的方法 ...
- 一个下载Google code源码的 绿色、迷你工具 MiniSVN v1.0
一个下载Google code源码的 绿色.迷你工具 MiniSVN v1.0 想下载Google code中的源码 不需要装各种软件,只需要一个小工具即可! 如何使用? 访问一个谷歌开源项目网站,比 ...
- PHP付费资源下载交易平台网站源码
简介: PHP付费资源下载交易平台网站源码可用于虚拟商品出售 安装搭建介绍: 环境:PHP5.3,MYSQL 数据库配置修改文件:\data\config.php 后台:域名/admin 账号:adm ...
- 下载android平台源码
我在寻找下载android平台源码时发现了几种方法,有的方法已经失效,现在把测试成功的下载方法写下来: 1,环境要求 需要在linux环境下下载.我选用的是ubuntu 我在安装完ubuntu时报错& ...
最新文章
- Golang的交叉编译问题
- supervisor的常用命令
- 给定下面的java代码_则运行_会产生类型的异常_JavaSE_笔试题_单选选择题
- Visio 2010,如何打开多个窗口
- iOS开发UI篇—使用xib自定义UItableviewcell实现一个简单的团购应用界面布局
- Jos pipe实现解析
- 2018.08.02 权限管理 笔记
- Gartner预测公有云将迎来“双头垄断”局面
- php和plc哪个难,致PLC初学者的入门一课,七大误区如何解决?
- 大地测量学基础(复习)第三部分
- 岩板铺地好吗_**岩板铺地「泉州泰亨石材供应」
- 2013江苏计算机二级vfp试题,2008年春季江苏省计算机等级考试二级VFP考试试题(含答案)...
- Markov链n步转移概率的两种解法
- DTPA PEG 异硫氰酸荧光素,DTPA PEG FITC,FITC-PEG-DTPA
- 福州大学计算机学院李敏,福州大学厦门工艺美术学院
- 将一张图片的人物融入另一张图片中
- 第六章 Wi-Fi扫描流程
- 似然,似然,似是而然!
- 什么是vps?vps和代理ip的本质区别?
- 数字内容市场水量上涨,阜博集团能否成为“鲶鱼”?