VS 2017开发ASP.NET Core Web应用过程中发现的一个重大Bug
今天试着用VS 2017去开发一个.net core项目,想着看看.net core的开发和MVC5开发有什么区别,然后从中发现了一个VS2017的Bug。
首先,我们新建项目,ASP.NET Core Web应用程序,如图:
新建好后,我们按照习惯,在controller文件夹上面,点击鼠标右键,添加控制器...,出现了如下界面:
这个对话框什么意思呢?怎么会提示添加依赖项呢?按理来说,我们直接调试运行,项目就跑起来了!!!
先不管他,我们直接点击添加,然后稍等一会儿,等他添加依赖。完成后,出现下面这个页面:
大概看了一下,项目中实际上 都已经配置好了,不管他我们继续。
然后,我们再次右键 -> 添加控制器...,如图:
我们输入UserController,这次成功的添加了控制器,我们在View()上面,点击鼠标右键,看到如下菜单:
这个时候,我们发现,并没有我们想要的“添加视图...“菜单,我看过一些其他人的教程,他们都是自己手动到Views目录添加的。
好吧,那就添加吧,添加完运行了一下,结果是正确的。
这个时候,我看了一下项目默认生成的HomeContorller,发现一个问题,这里面的View()上面点击右键菜单,竟然有“添加视图...”这个菜单,如图:
而且,鼠标放到View()上面,还会显示视图的路径,如图:
但是,到我们新建的UserController里面,什么都没有,这是不合理的,肯定是我们哪里操作的不对,才会造成这样的情况。
所以,经过一番研究,我发现一个问题,我们通过右键 -> 添加新项...,对话框中选择如下的控制器(ASP.NET Core),创建的出来的控制器,右键菜单会出现”添加视图...“,如图:
于是,我愉快的点击右键 ->添加视图...,完成了操作,结果也正如我们所料,VS2017自动新建了目录和cshtml文件。
但是,我们回来看,控制器里面的View()还是显示红色,并不像HomeController中那样;这说明,VS2017并没有识别我们新建的视图。
刚好我的电脑安装的有Resharper,我鼠标放过去出现下面提示,如图:
于是,我选择了第一个,添加了视图,发现,这次才是完全对了,和HomeController中一模一样了。
没有安装Resharper的,大家可以通过以下方法添加视图,
1.按照控制器添加好文件夹,这里是Test.
2.在新建的文件夹上面,鼠标右键 -> 添加新建项...,出现如下对话框:
输入对应的方法名即可。
总结:
从上面的操作种种迹象发现,VS2017这里的右键菜单是错误的,默认添加的都是MVC5的控制器和视图,所以才会出现添加MVC依赖项那个对话框。于是我又重新新建了一个项目测试了一下,发现那个“添加MVC依赖项”的对话框没有出现。
后面大家开发时,要记得用正确的方式添加控制器,至于视图,还是要手动添加的,如果有Resharper则按下Alt +Enter键,回车即可。希望微软早日修复这个Bug。
作者:雲霏霏
.NET QQ交流群:243633526 安卓QQ交流群:227526925 更多类型交流群敬请期待!
博客地址:http://www.cnblogs.com/yunfeifei/
Github地址:https://github.com/yunfeifei
声明:本博客原创文字只代表本人工作中在某一时间内总结的观点或结论,与本人所在单位没有直接利益关系。非商业,未授权,贴子请以现状保留,转载时必须保留此段声明,且在文章页面明显位置给出原文连接。
如果大家感觉我的博文对大家有帮助,请推荐支持一把,给我写作的动力。
VS 2017开发ASP.NET Core Web应用过程中发现的一个重大Bug相关推荐
- ASP.NET Core Web API 集成测试中使用 Bearer Token
在 ASP.NET Core Web API 集成测试一文中, 我介绍了ASP.NET Core Web API的集成测试. 在那里我使用了测试专用的Startup类, 里面的配置和开发时有一些区别, ...
- 如何测试ASP.NET Core Web API
在本文中,我们将研究如何测试你的ASP .NET Core 2.0 Web API解决方案.我们将了解使用单元测试进行内部测试,使用全新的ASP .NET Core的集成测试框架来进行外部测试. 本文 ...
- 如何测试 ASP.NET Core Web API
在本文中,我们将研究如何测试你的 ASP .NET Core 2.0 Web API 解决方案.我们将了解使用单元测试进行内部测试,使用全新的 ASP .NET Core 的集成测试框架来进行外部测试 ...
- [译]ASP.NET Core Web API 中使用Oracle数据库和Dapper看这篇就够了
园子里关于ASP.NET Core Web API的教程很多,但大多都是使用EF+Mysql或者EF+MSSQL的文章.甚至关于ASP.NET Core Web API中使用Dapper+Mysql组 ...
- Asp.Net Core Web Api图片上传及MongoDB存储实例教程(一)
图片或者文件上传相信大家在开发中应该都会用到吧,有的时候还要对图片生成缩略图.那么如何在Asp.Net Core Web Api实现图片上传存储以及生成缩略图呢?今天我就使用MongoDB作为图片存储 ...
- ASP.NET Core Web API 索引 (更新Identity Server 4 视频教程)
GraphQL 使用ASP.NET Core开发GraphQL服务器 -- 预备知识(上) 使用ASP.NET Core开发GraphQL服务器 -- 预备知识(下) [视频] 使用ASP.NET C ...
- Asp.Net Core Web Api图片上传(一)集成MongoDB存储实例教程
Asp.Net Core Web Api图片上传(一)集成MongoDB存储实例教程 原文:Asp.Net Core Web Api图片上传(一)集成MongoDB存储实例教程 Asp.Net Cor ...
- UkrGuru.SqlJson非常适合您的ASP.NET Core Web应用程序!
目录 背景 介绍 使用代码 服务设置 提供在页面中使用的DbService Index页 创建页面 编辑页面 详细信息页面 删除页面 在本技巧中,您将了解一种无需在ASP.NET Core Web应用 ...
- core webapi缩略图_在ASP.NET Core Web API 项目里无法访问(wwwroot)下的文件
新建 ASP.NET Core Web API 项目 -- RESTFul 风格 Hello World! 一.创建一个空项目 请查看 新建 .NET Core 项目 -- Hello World! ...
最新文章
- 【新】欢庆网自动搜索请柬console方法,面对多种网站改版的情况
- python学习必备知识点: 装饰器
- 一个程序猿和非程序猿都会关注的重大事件
- linux打开ftp功能的方法
- IO多路转接之poll
- html不用点击自动执行,页面自动执行(加载)js的几种方法
- “约见”面试官系列之常见面试题之第六十二篇之IE和兼容下写法(建议收藏)
- oracle gtx,ORACLE
- django-学生列表页的制作
- 【Python】pyinstaller安装失败的解决办法
- 【英语学习】【医学】Unit 02 The Brain and Its Functions
- 真快!iOS 15.4支持戴口罩解锁了:苹果终于满足iPhone用户需求
- 矢量绘图设计专业工具:Sketch 84 for mac
- 202102 sqlplus command not found 注意切换用户
- 机器学习-推荐系统中基于深度学习的混合协同过滤模型
- django mysql 时区_Django 中关于时间、时区的用法
- 如何选择适合你的兴趣爱好(十),排球
- Java循环之经典练习题
- 用蚕茧表示法写简洁实用的接口文档
- php汉字转拼音百家姓版,砚田马中华书《百家姓》(文字拼音版)
热门文章
- 线程调度四(setDaemon方法的使用)
- 手写简单的双向数据绑定
- Vmware安装提示在关闭以下进程 之前,无法进行安装的解决办法
- 渐变显示渐变消失的BackgroundView
- Can't connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock‘ (2)解决思路
- 本人CCNP、OCP MCSA 证书寻求挂靠
- Oracle中Scott账户常见表的样本查询编程与数据库
- [05]EXTJS4.0的读写器reader,writer
- SharePonit Host WCF 注意事项
- Windows 网络服务架构系列课程详解(六) ---利用NLB群集实现WEB服务器的可靠性...