使用VS Code开发.Net Core 2.0 MVC Web应用程序教程之二
好了,废话也不多说,咱们直接来看看这款MVC的造型——你可能会大吼:“这……这特么的都是些什么鬼?”
靠,告诉你吧,我也不知道这都是些什么鬼,反正以前我是没有见过这样的MVC。咦,老纸的config文件呢?跑哪去了?config不是说好的标配吗?我上哪配置数据库连接去?还有那个wwwroot又是什么玩意儿?还有这个__layout下边怎么有environment那个东西?
先不管了,我们先来把我们的系统架构搭建起来吧,这些配置上的问题回头再收拾它。
那好,我们要做的是一个CMS系统,是一个不大不小的玩意儿。那要是把所有的东西都放在一个项目下,回头弄起来肯定是不会太舒服的。我们也利用当前比较流行的简单三层架构,给加一些相关项目进去吧。
额,简单三层架构,都知道吧?三层架构呢分为UI、BLL和DAL,我们的MVC这一整块就当UI了,除了BLL和DAL外,还得加个Models用存放各种模型,有一个DBUtility用于提供数据库的访问。但是呢,我们这里面的数据库访问直接会使用Entity Framework来完成,所以那谁谁谁就不需要了。
好,下边开始快速创建三个类库项目(BLL、DAL、Models)出来。调出 集成终端,用dotnet new -help命令看看创建类库的命令是啥?好了,发现了——是它:dotnet new classlib,然后 -n 项目名称。如下:
好了,我们创建好了Models,下边接着快速弄出BLL和DAL来,然后还有一个用于一般性操作,比如字符转换啊、文件加密啊之类的公用类common。如下图:
然后,添加引用……创建了项目之后当然要添加引用啊,不引用我咋用?可是我找了老半天,不知道在哪添加引用,真是蛋疼了。都找不到一个生成dll的地方。我去,生成dll?想起来了,刚刚用help看集成终端命令的时候发现有一个build命令,应该是它吧?试一试呗。
好,我们在集成终端中输入命令dotnet build MyCMS.BLL/MyCMS.BLL.csproj先生成BLL试一下,回车,哈哈哈,成了!
接下来生成另外的三个项目。命令分别是dotnet build MyCMS.DAL/MyCMS.DAL.csproj 和 dotnet build MyCMS.Modles/MyCMS.Models.csproj 再和 dotnet build MyCMS.Common/MyCMS.Common.csproj。挺好玩是吧?
但是我们的问题还没有解决啊,就是,怎么进行项目间的相互引用,不会让我去把生成的dll直接拷贝过来放在当前项目下吧?
于是我去翻了微软的官方文档,开源社区什么的,最后在我们自己的项目里的MVC项目下工程文件MyCMS.Web.csproj中发现了下边这个东西——
不会就是这个鬼东西吧?添加引用要在工程文件中手写?我去,真是low到家了。不管怎么样,我们来试一下能不能在这里面吧BLL、Models和Common引用进来吧?我试了一下,不行,但是当我把PackageReference改成ProjectReference后,居然成了!!!我特么真是天才(吹流弊的哈,我是在微软官方文档里找了老半天才发现的)
代码如下:
MyCMS.Web.csproj中配置的引用:
MyCMS.BLL.csproj中配置的引用:
MyCMS.DAL.csproj中配置的引用:
好啦,测试一下,一切正常,过程我就不描述啦,m没什么大事却要截图一大堆,想想都累得慌。具体的操作过程,我们在接下来的项目中继续整吧。
今天先整到这里吧。午餐时间到了。
使用VS Code开发.Net Core 2.0 MVC Web应用程序教程之二的更多相关文章
- 使用VS Code开发.Net Core 2.0 MVC Web应用程序教程之一
好吧,现在我们假设你已经安装好了VS Code开发工具..Net Core 2.0预览版的SDK dotnet-sdk-2.0.0(注意自己的操作系统),并且已经为VS Code安装好了C#扩展(在V ...
- 使用VS Code开发.Net Core 2.0 MVC Web应用程序教程之三(配置文件读取)
干了一天的活,还有点时间,给兄弟们写点东西吧. 大家有没有发现一个问题?那就是在.Net Core的MVC项目里面,没有.config文件了!!!同志们,没有config文件了啊,这样搞,我以后要做些 ...
- 使用VS Code 开发.NET Core 应用程序 部署到Linux 跨平台
使用VS Code 开发.NET Core 应用程序 部署到Linux 跨平台. 前面讲解了VSCode开发调试 .NET Core.都只是在windows下运行. .NET Core真正的核心是跨平 ...
- 部署到Linux使用VS Code 开发.NET Core 应用程序
使用VS Code 开发.NET Core 应用程序 部署到Linux 跨平台 使用VS Code 开发.NET Core 应用程序 部署到Linux 跨平台. 前面讲解了VSCode开发调试 .NE ...
- ASP.NET Core 2.0 MVC项目实战
一.前言 毕业后入职现在的公司快有一个月了,公司主要的产品用的是C/S架构,再加上自己现在还在学习维护很老的delphi项目,还是有很多不情愿的.之前实习时主要是做.NET的B/S架构的项目,主要还是 ...
- ASP.NET CORE 1.0 MVC API 文档用 SWASHBUCKLE SWAGGER实现
from:https://damienbod.com/2015/12/13/asp-net-5-mvc-6-api-documentation-using-swagger/ 代码生成工具: https ...
- .net core 2.0 mvc 获取配置信息
mvc_core_config *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 ...
- asp.net core 3.0 MVC JSON 全局配置
asp.net core 3.0 MVC JSON 全局配置 System.Text.Json(default) startup配置代码如下: using System.Text.Encodings. ...
- asp.net core 3.0获取web应用的根目录
目录 1.需求 2.解决方案 1.需求 asp.net core 3.0的web项目中,在controller中,想要获取wwwroot下的imgs/banners文件夹下的所有文件: 在传统的asp ...
随机推荐
- R语言统计分析技术研究——卡方检验的思想和实现
卡方检验的思想和实现 作者:李雪丽 材料摘自:百度
- Spring+SpringMVC+MyBatis深入学习及搭建(十四)——SpringMVC和MyBatis整合
转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/7010363.html 前面讲到:Spring+SpringMVC+MyBatis深入学习及搭建(十三)--S ...
- 手动整合实现SSH项目开发01
内容简介:本文主要介绍SSH项目开发的配置以及简单登录功能的实现. 1. 新建一个Dynamic Web Project. 2.导入需要 的Jar包,此项目是Struts.Hibernate.Spri ...
- Hadoop 笔记1 (原理和HDFS分布式搭建)
1. hadoop 是什么 以及解决的问题 (自行百度) 2.基本概念的讲解 1. NodeName master 节点(NN) 主节点 保存了metaData(元数据信息) 包括文件的owener ...
- mysql的my.ini文件详解
mysql数据库在配置时包含很多信息:端口号,字符编码,指定根路径 basedir,指定数据存放的路径等信息 mysql的字体编码分为两种: 服务器编码 客户端输入的编码 通常服务器的编码都是utf- ...
- System.Runtime.Serialization.SerializationException”类型的未经处理的异常在 System.Runtime.Serialization.dll 中发生
异常信息: “System.Runtime.Serialization.SerializationException”类型的未经处理的异常在 System.Runtime.Serialization. ...
- [leetcode-592-Fraction Addition and Subtraction]
Given a string representing an expression of fraction addition and subtraction, you need to return t ...
- [leetcode-554-Brick Wall]
There is a brick wall in front of you. The wall is rectangular and has several rows of bricks.The br ...
- 【Android Developers Training】 93. 创建一个空验证器
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...
- Linux之用户管理--初级上
管理用户命令汇总 命令 注释说明(特殊颜色的必须掌握) useradd增 同adduser命令,执行此命令可在系统中添加用户.(更改4个用户文件) userdel删 执行此命令可删除用户及相关用户的配 ...