2023年3月

上面这个界面应该是 vs2010的

一、 VS2012

、VS2013

其实每个模板的意思,在右边已经显示出来了。
Empty,就是一个空的模板,创建后里面除了一个web.config外什么都没有;
WebForm,是Web窗体应用程序,新建的网站一般选这个,创建后项目自动生成一个可运行的网站,可以在这基础上修改,也可以删了不需要的东西从新创建页面;
MVC,是MVC模式的web项目,分模型、视图和控制器来编写web;
Web API,是创建简单、轻量型的web服务
Single Page Application,是创建单页面应用程序;
Facebook,这个没了解过,应该是和Facebook有关。

二、 VS 2015

选择web --ASP.NET Web应用程序 后,点击确定,弹出选择细分项目界面:

vs2015 中选择
Web API
的时候会提示是基于RESTful 样式 的项目 和基于MVC的,到了vs2017 就不注意提示了,默认就是。

并且可以同时选择创建Web Forms 和添加 单元测试,到了vs2017 这两项都不会出现。估计也是默认添加了单元测试,webforms就不知道了。

特别一提:
Single Page Application
基于Js html5 的单页面应用,值得一试。

三、VS2017

选择Core web会弹出下方选择窗体:Core的好处是可以跨平台,

左上角选择.NET.Core 时,下方可以勾选 Docker选择对应的操作系统。啥是Docker?  可以选择Core版本,目前只有看到2.0

选择普通web 会弹出下方新建选项,和Vs2015差不多

做web api 可以参考一下网友

C#进阶系列——WebApi 接口参数不再困惑:传参详解 - 懒得安分 - 博客园
https://www.cnblogs.com/landeanfen/p/5337072.html#_label1_0

-----------

选择ASP.NET Core Web应用 创建,点击确认时 弹出以下异常

在左下角看到提示在安装很多东西,不知道是否和这个异常有关

C# log4net 的配置 - ???笨小孩 - 博客园 -- 看后面的
桌面应用程序 那里
https://www.cnblogs.com/weixiaowei/p/8253228.html

C#log4net配置 - 大江东去奔流到海 - 博客园 -- 此文比较适合
https://www.cnblogs.com/hryan/p/8005650.html

将下载好的Log4net.dll添加到你的工程目录,之后添加工程引用
之后再在app.config文件中添加Log4net的配置条目,在<configSections>...</configSections>中添加下面的条目,要将<startup>...</startup>放在下面

安装好 IIS ,可能会碰到 404

控制面板\所有控制面板项\管理工具-->Internet 信息服务(IIS)管理器

随便填个名称,项目的路径,选择一个新的端口。

http://localhost:6081/index.html    或直接访问你的静态资源

new Date().getTime();  //1533213439019

通过,启发

function DateTimeToUnix(const AValue: TDateTime): Int64;
begin
Result := SecondsBetween(UnixDateDelta, AValue);
if AValue < UnixDateDelta then
Result := -Result;
end;

得到秒级别的,本人改造一下:

MilliSecondsBetween(UnixDateDelta, Now );得到的是比 JavaScript  得到的大很多的数,猜想应该获取的是

解析:它得到的时间比c语言中time()得到的时间大了8*60*60
这是因为Now是当前时区的时间,c语言中time()是按格林威治时间计算的,
北京时间比格林威治时间多了8小时

最终写成:现在的时候 -8

MilliSecondsBetween(UnixDateDelta, IncHour(Now,-8) )