WCF + MVC + bootstrap-table 入门实例

好久不更了,最近搞起Web来啦,走了很多弯路,补一个帖,以供新人学习~~

平台:Win10

IDE:VS2017

本实例分为两个,一个是WCF的VS项目,一个是MVC的VS项目,下面详细介绍一下:

一、WCF服务项目实例

码云下载链接

实例功能:输入两个数,然后计算出两数之和。本身是一个服务,需要其它程序(如mvc项目)调用使用。

WCF的入门实例网上可以搜到很多,就不赘述了,本人走过的弯路主要是将其部署在IIS上。起初在IIS上一通乱改,后来才发现是Win10没配置好。

这里分享一下三个问题:

1. 最好是把下图中的4项都全选,其中Web核心那个很重要,我就栽这里了。

2. IIS里可能没有.NET 4的相关东西,然后你百度到的帖子可能是让你运行“C:WINDOWSMicrosoft.NETFrameworkv4.0.30319aspnet_regiis.exe -i”类似的指令,但是可能会报错“此操作系统版本不支持此选项 ”,我的就报错了,报错了可以参考这个

3. 没有3了,主要就是这两个问题吧比较烦人,IIS本身不需要改什么配置(比如脚本映射、身份验证什么的),默认配置就没啥问题。在IIS上部署WCF的时候,我没有事先发布到某个文件夹,而是在添加网站的时候直接选了VS项目目录的相关路径,方便调试一些,这个不太重要。

二、MVC项目实例

码云下载链接

实例功能:调用上面的WCF服务,实现计算两数之和。Index页面分为三部分,第一个是用了html自带的输入控件,第二个是用了bootstrap-table以表格的形式呈现,第三个是用了.ajax直接调用相关函数。

运行的时候,VS中打开index.cshtml,然后运行就可以了(注意网址的后面应该是 /Plus/Index 哦),页面是这样滴:

程序本身没啥内容,主要是对VS下MVC项目的理解和bootstrap-table的部署,这对于新手来说的确有点难,就这我弄了一个星期。。。。特别说明一下,如果是用NuGet装的bootstrap-table那就简单了,它自己就配好了,我之前是自己从别的项目中直接拷的文件,所以配置上面画了很多功夫。

对MVC的基本概念可以找到很多帖子(比如这个),bootstrap-table的帖子也很多,但都比较复杂,新手表示看不懂,而且也不是我想要的方式。这里多啰嗦一点,因为调用bootstrap-table得依靠js代码,而js代码既可以直接写在cshtml中,也可以另写js脚本。用脚趾头想想也是第二种方式更现实(对于大型项目而言),但是搜到的很多帖子都是直接写在cshtml中的。另外,表格数据的获取,我想要从控制器中获取,而不是直接定义在js脚本中,这种例子也不太好找。万幸最后还是找到了,但是跟我的需求还是有出入,这也是我分享自己项目的原因。

新手可能会有跟我之前一样的一些疑问:

1. VS的MVC项目下 BundleConfig.cs、_Layout.cshtml是干什么的?bootstrap-table要放在哪里?又该在哪里引用?

答:在BundleConfig.cs中可以定义一些变量类似的东西,然后再在_Layout.cshtml中以@Scripts.Render的方式调用,所以bootstrap-table的css和js相关引用可以直接定义在BundleConfig.cs中,当然也可以在_Layout.cshtml中引用,我用的是第一种方式。

2. 自己写的js脚本放哪里?

答:随便,引用的时候路径正确就可以了,我是在Scripts下新建了一个APP文件夹。这里注意,最好js脚本的名字跟控制器啥的别重名,因为我这个test.js之前叫plus.js,运行的时候总出问题,不知道为啥,搞不懂。。

3. 是否一定要新建Models文件?

答:随便,我这里是为了学习一下,才建了个HeadModel.cs玩一玩。

基本上就这些了,其它的问题就自行去代码里找答案吧,比如某些文件路径、某些变量位置、某些语法等等。

原文地址:https://www.cnblogs.com/hxzkh/p/13879179.html