4webapi说明及可能出现的问题

Posted 宛如一个ZD

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了4webapi说明及可能出现的问题相关的知识,希望对你有一定的参考价值。

  使用webapi,稍微了解一下的都知道,像本教程中的[HttpGet]表示传输方式,在我的第一个项目中,我都是统统用的[HttpPost]效果差不多,但是按照网上的解释说,这种方式安全,且传输的数据没有限制,所以以后我都会使用[HttpPost],但是缺点是不能在网页中直接看到

 

  还有同学可能看到了上一章get函数的返回类型是jsonResult和在函数里面,return的是Json(xx),就像我们在网页看到的数据一样,是Json格式的,以前我是用返回什么数据就要建一个模型,但是最近发现,可以用Jsonresult统一返回格式,妈妈再也不用担心我的数据模型(model)太多了,在return那里记得,格式是json(xxx),表示把xxx转换成json格式,xxx表示要返回的数据

 

 

虽然在本教程中没有出现这些问题,但是以后再实际项目中总会碰到的,请相信你我,这些也算是C#相对于其他后端语言的特点,我在项目中被这些问题搞得要死要死的,下面就简单说下吧,也就是我在项目中碰到的

特性问题,你问我什么是特性?直接上图

这个[Key]就是特性,还要加上一行using才能不报错,这个的作用是跟数据库有关的,如果数据库中的表有主键,这里就需要把有主键的属性设置成[Key]属性,不然前端是取不到数据的。以下是会出现问题的错误提示(图截得不是很全,抱歉)

 

还有一个比较坑的特性,当时我熬了两天,问过各位大佬,可能是我没说清楚,那就直接上图吧

这个单词的意思是并发检查,至于你会在什么地方会碰到这个,我就不清楚了,但是我可以把我的错误提示贴出来,就是这玩意把我折腾了两天两夜,望各位同学且行且珍惜

 

还有一个就是可空类型

在int后面加个?,该属性就是可空类型,作用是防止报错,原因是数据库中相应的数据有时默认是空值,这里因为我一下就解决了,问题的贴图就没保存。

 

最后告诉同学一个比较实用的查错方法(可能是我比较蠢,只知道这种),就是如果前端查不到后端送过来的数据,但是又不知道在哪里出了错,就把[HttpPost]改为[HttpGet],在调试里看下能不能看到数据,一般都是在这里看到错误的。

 

还有一个比较蠢的数据库查错方法,在创建完数据库的数据模型后,把每个数据模型都用[HttpGet]的函数调到网页上看下,反正我每次都是这么做的,也确实排了很多错。

 

好了,下一篇就是前端了,唉,全栈真的好累啊

(三)搭建前端—Vue生态

以上是关于4webapi说明及可能出现的问题的主要内容,如果未能解决你的问题,请参考以下文章

MySQL 数据库输入密码后闪退的问题及解决办法

PySide2出现“ImportError: DLL load failed: 找不到指定的模块”的问题及解决方法

WEB工程的创建运行过程及可能出现的问题

ACM各种WA的说明及可能的原因

ES6 可能出现的兼容问题及处理方法

对三国演义人物出现次数统计分析