第一个坑 前提编译符
我们在编写一些要领的时刻一般会为Debug形式增添一些输出日记等以便我们搜检,也会为Release形式增添或修正一些特定的参数,但本日我在写这些的时刻就碰到了这个坑
#if !DEBUG #endif 中心的代码 不能我怎样变动设置环境 始终是灰色,这让我最先疑心,岂非VS 2017 的.NET Core 不支持前提编译符了?
因而新建了个控制台顺序测试了以下,但又发明照样起作用了的以下:
这里就能够 看到 我明显不是Debug环境啊,然则 #if DEBUG的照样一般色,!DEBUG的照样灰色,直接F5运转后 发明效果出乎我不测
效果居然是一般的,怎样我又疑心是我vs 更新后出题目了,因而我又用.net framework 旧花样建立一个了一个项目发明旧的又是好的
第二个坑 .NET Core MVC下的部份文件没法下载
运用.NET Core MVC建立了一个站点,原本运用的还蛮好的,但厥后装备了app 因而就直接把apk 文件放到 网站的wwwroot目次下了,改了个名字就叫app.apk,然后接见: http://127.0.0.1/app.apk 返回给我一个404 not find
由于搞iis 照样比较多,因而立时想到一个是天天增加 mime致使,因而去iis站点内里增添,发明以及存在了
霎时就懵逼了,因而就从到要求挑选内里去找找是否是在那被制止了 但发明也没用,因而又把文件改成app.apk.zip试了下,发明zip是能够下载的
第三个坑 .NET Core 2.0 MVC 的试图文件
从2.0最先貌似试图文件被直接打包成了dll文件,不在像传统的mvc一样宣布后照样shtml文件,而是被编译成了dll文件 定名规则是 项目名称.PrecompiledViews.dll
第四个坑 .NET Core 援用DLL题目
我们之前开辟老是把一些经常使用的某些功能性的零丁做成一个类库 编译成dll 后供项目运用,但如许做好像在.NET Core的项目中行不通
早先我写了一个大众的类库,在解决方案内里又新增了一个类库,去援用大众类库的项目,如许做的时刻并没有什么非常,但当我启动别的一个vs建立一个新的解决方案增加项目在去援用大众类库的dll后 在vs内里写代码都很一般,代码提醒也都有
然则一按F5 调试就出来坑了,报未能找到范例或定名空间
解决方案是把大众类库打包 生成NuGet包
然后经由过程治理NuGet包增加援用,但许多情况下 一些类库我并不想都放到nuget.org上面,能够把生成的nuget包安排Microsoft Visual Studio Offline Packages 离线包内里
放到Microsoft Visual Studio Offline Packages对应的目次即可
以上就是.NET Core中碰到的一些坑的图文详解的细致内容,更多请关注ki4网别的相干文章!