再次记录 Visual Studio 2015 CTP 5 的一个坑
升级到 VS2015 CTP 之后,今天要改项目中的一个东西,然后就不得不把 C# 6.0 改变的语法代码中改了下(之前没改,大约200多个),首先,比如下面示例代码:
var fullName = "\{customer.FirstName} \{customer.LastName}";
项目中有很多这样的类似代码,这些都得改掉,怎么办?手动改???算了,还是批量修改吧,但是怎么批量替换呢,难道直接把“ {”替换成“{”,但是“$"该怎么加呢?这个问题我思考了好久,之后还想用正则表达式替换,但是语法写不出来,哎,最后的替换方式是:手动+替换,替换“ {”,然后手动在字符串前加“$”。
这里需要注意的是,千万不要批量替换“ {”,因为替换之后,你不知道哪里用到了字符串变量,因为它会把“{”作为字符串的一部分,而没有了错误提示和智能提示,这个千万要记住,如果你这样替换,那你就死了。
再记录一个,之前在"{"中,写三目表达式是可以的,比如下面:
var fullName = "\{customer.FirstName =="xishuai" ? "cnblogs_xishuai" : customer.FirstName} \{customer.LastName}";
但是,替换成现在的语法特性,比如下面:
var fullName = $"{customer.FirstName =="xishuai" ? "cnblogs_xishuai" : customer.FirstName} {customer.LastName}";
上面这样写是会报错的,这个问题也困扰我很久,难道这也不支持?最后搞了好久,发现要在表达式上加“()”,如下:
var fullName = $"{(customer.FirstName =="xishuai" ? "cnblogs_xishuai" : customer.FirstName)} {customer.LastName}";
事情还没完,话说我改的差不多了,我自认为是把所有的语法特性的代码都改了,然后充满信心的“Build”,然后就出现了下面这样的情况:
错误信息:“Metadata file 'xxxxxx.dll' could not be found” CSC,这个问题看到都头疼,然后我就搜遍了 Google,基本上的解决方式是:
- Clean every project individually (Right click> Clean).
- Rebuild every project individually (Right click> Rebuild).
- Rebuild the startup project.
无效,再搜,再尝试,无效,再搜,再尝试。。。
解决一个问题,如果方向错了,那你就死惨了,我现在就是这样。
最后猜怎么着?还是代码问题,有一个类库的语法特性代码没有改掉,我滴妈呀,为什么 VS2015 CTP 的错误提示没有显示出来呢,而是显示了一些乱七八糟的东西,最后发现的地方是 Output(输出窗口):
error CS1009: Unrecognized escape sequence
看到这样的错误,我就释然了,要改代码了。
本文转自田园里的蟋蟀博客园博客,原文链接:http://www.cnblogs.com/xishuai/p/vs2015-ctp-c6-keng.html,如需转载请自行联系原作者
再次记录 Visual Studio 2015 CTP 5 的一个坑相关推荐
- 升级 Visual Studio 2015 CTP 5 的坑、坑、坑
上面的文章中详细说明了 VS2015 各个版本更新内容,除了 VS2015 IDE 的发布,微软还发布了 ASP.NET 5 Beta2,信息量很大. 吐槽开始 前天的时候,根据上面文章中的链接地址, ...
- Visual Studio 2015 前端开发工作流
Visual Studio 2015 CTP 5,全称为 Visual Studio 2015 Community Technology Preview 5,意为社区技术预览版,之前的版本为:Visu ...
- 2022-01-18 Caffe+Window11+Visual Studio 2015+Python3.5 CPU+GPU 配置详细教程
2022-01-18 Caffe+Window11+Visual Studio 2015+Python3.5 CPU+GPU 配置教程 文章目录 前言 1.开篇背景 一.资源准备 二.配置过程-雷区 ...
- 有感 Visual Studio 2015 RTM 简介 - 八年后回归 Dot Net,终于迎来了 Mvc 时代,盼走了 Web 窗体时代...
有感 Visual Studio 2015 RTM 简介 - 八年后回归 Dot Net,终于迎来了 Mvc 时代,盼走了 Web 窗体时代 太阳火神的美丽人生 (http://blog.csdn.n ...
- VS2015--win32project配置的一些想法之在 Visual Studio 2015 中进行调试的同一时候分析性能...
出处: https://msdn.microsoft.com/zh-cn/magazine/dn973013(en-us).aspx 很多开发商花了绝大多数时间获取应用程序才干正常发挥作用.更少的时间 ...
- Visual Studio 2015 Community连接到Mysql
版权声明:本文为博主原创文章,未经博主允许不得转载. 本文首发于CSDN:http://blog.csdn.net/cxq2046/article/details/51108256 至今暂未授权其他任 ...
- Visual Studio 2015 速递(4)——高级特性之移动开发
系列文章 Visual Studio 2015速递(1)--C#6.0新特性怎么用 Visual Studio 2015速递(2)--提升效率和质量(VS2015核心竞争力) Visual Studi ...
- (win10 64位系统中)Visual Studio 2015+OpenCV 3.3.0环境搭建,100%成功
(win10 64位系统中)Visual Studio 2015+OpenCV 3.3.0环境搭建,100%成功 Visual Studio 2015下载地址:https://msdn.itellyo ...
- visual studio 2015 搭建python开发环境,python入门到精通[三]
在上一篇博客Windows搭建python开发环境,python入门到精通[一]很多园友提到希望使用visual studio 2013/visual studio 2015 python做demo, ...
最新文章
- 用C实现动态结构机制
- 浅谈Spring框架注解的用法分析
- python 中的os.path.split()函数用法
- [javaSE] 多线程(守护线程)
- 递归和迭代_迭代与递归
- Leet Code OJ 169. Majority Element [Difficulty: Easy]
- http的“无连接”指的是_http协议无状态中的 quot;状态quot; 到底指的是什么?...
- 我的Linux折腾史
- vue引入SuperMap超图 引入流程及报错处理
- mysql数据库外键的作用
- codeforces1549 F1 - Gregor and the Odd Cows (Easy)(皮克公式)
- html embed如何禁止自动播放,html embed用法
- 软件建模与分析--共享单车管理系统
- Android JSON解析库Gson和Fast-json的使用对比和图书列表小案例
- bootstrap-select 滚轴_Bootstrap-Select插件
- Java,php,运维工程师转型大数据开发怎么样?你属于哪一类?
- OO 之美:设计的分寸
- Linux内核之进程管理《Linux内核设计与实现》
- Redis server went away
- PCIE,USB传输速率和带宽
热门文章
- 当计算机从硬盘读取数据后 将数据,当计算机从硬盘读取数据后,将数据暂时储存在于()...
- matlab 电路频率响应_学习电子电路有什么仿真软件?有哪些优缺点?
- 高中经历——高考专业被调剂毁了童年梦想
- 神奇的 Object.defineProperty 解释说明
- 服务器返回一个无效的JSON string,处理
- silverlight导出excel
- 动态T-SQL语句常見問題與解決方案
- C#中的DBNull、Null、和String.Empty解释
- qml-创建可移动的模态弹出框
- C# Socket案例(服务端与客户端)