WebApi+Swagger(項目階段總結(jié))

工具

  • Visual Studio 2015
  • ELinq ORM
  • Oracle

流程概述

  1. 建立ASP.NET WebApi應(yīng)用程序
  2. 添加Elinq包、Swashbuckle包、添加引用System.Data.OracleClient
  3. 修改SwaggerConfig.cs配置文件,并生成XML文檔文件,注意要與配置文件中的地址要一致
  4. 在文件夾Controllers中添加Web API控制器類(v2.1)
  5. 添加實體層,建立映射關(guān)系
  6. 根據(jù)具體輸出需求,添加輸出模型,同時建立一個通用的輸出格式,和輸出狀態(tài)信息判斷。
  7. 添加日志記錄配置
  8. 添加業(yè)務(wù)處理層,寫具體的業(yè)務(wù)代碼
  9. 在建好的控制器中調(diào)用業(yè)務(wù)處理層中寫好的方法以及加載的項目
  10. 全局異常捕捉設(shè)置

具體問題

  1. 接口編寫的效率問題
    目前寫的接口中,代碼的相似性較高,每個方法用的語句大同小異,在熟悉了使用流程后,下一步就是要更快速地編寫一個又一個的新接口。
  2. 在使用ELinq多表查詢時映射關(guān)系問題
    在注冊兩張表的映射關(guān)系時,得弄明白一對多,多對一,一對一的關(guān)系類型。

例如:一個簡化后的產(chǎn)值排序的問題,目標(biāo)表(產(chǎn)值列:100萬以下,100萬以上),字典表中存儲著不同產(chǎn)值刻度排序的值(SORTID),并且字典表中有3套不同的產(chǎn)值刻度排序體系,“100萬以上”在三套排序體系中都有。
目標(biāo)表對字典表:一對多
字典表對目標(biāo)表:多對一
然而在實際運用中,在目標(biāo)表處注冊一對多的映射關(guān)系,最后查詢失??;在字典表處注冊多對一的關(guān)系時,最后查詢成功。
可能原因:一對多時,在業(yè)務(wù)代碼處理的地方,ELinq語句轉(zhuǎn)化為SQL語句時,沒有加上where條件子句,導(dǎo)致報單個查詢返回多個行的異常;多對一解決了這個問題。
引申:如果目標(biāo)表中,“100萬以上”也出現(xiàn)多次,目標(biāo)表和字典表變成多對多的關(guān)系,但ELinq暫不支持多對多的映射關(guān)系,可能直接在后臺寫SQL語句,然后調(diào)用會更方便一點,待驗證。

  1. SVN代碼管理問題
    對代碼的協(xié)同,還有待改進(jìn),對不用提交到服務(wù)器上的一些文件還不是很清楚;在代碼提交的時候,并沒有寫版本日志信息,這是一個潛在隱患

總結(jié)

  1. 注釋很重要,寫好注釋,不僅方便日后他人維護(hù),也是方便自己的改動和查看。沒有注釋,自己一周后再看自己的代碼都煩。
  2. 協(xié)作和溝通,和項目其它人員多溝通,尤其是作為新人,在對整個流程都不清楚的情況下,缺乏溝通容易導(dǎo)致寫出來的東西不能直接用,從而導(dǎo)致大量的改動。目前,自己正處于這種缺乏和項目成員溝通的情況,連項目中的人員一大半都不認(rèn)識。2018的頭三個月,爭取認(rèn)識80%的三組同事,首先把前端的四個同事認(rèn)熟,便于工作地開展。
  3. 多問,多向指導(dǎo)人請教,指導(dǎo)人經(jīng)驗豐富,對問題的認(rèn)識也更深刻,意見的含金量更高。
  4. 多點勇氣,少些畏難情緒,既然做了開發(fā)行業(yè),那就必然會被各種技術(shù)壁壘和BUG圍繞。有的技術(shù)確實很難,可能要耗費極大的精力才能解決,但是就這么幾個月接觸的入門級技術(shù)的感受來說,在現(xiàn)在來看,并沒有很難,甚至很基礎(chǔ)。不過,在當(dāng)時學(xué)習(xí)的時候,總是感到很絕望,經(jīng)常性焦慮不堪,幾乎覺得自己難以勝任程序員這份工作,間歇性地自我否定,有大部分覺得難的問題其實是自己嚇自己,覺得不可逾越的障礙未必真的就很難,有時候事后一反思,不過紙老虎而已。很明顯,自己缺乏直面困難的勇氣,缺少積極樂觀的情緒,缺少自信力,尚未找到工作中的樂趣從而轉(zhuǎn)化為積極陽光的動力。在接下來的日子,自己得學(xué)會面對不斷爬坡的節(jié)奏,用積極的態(tài)度對待工作和生活,不要幻想著逃避能解決問題,正面剛它,自己解決不了就問百度、同事、師傅,直到解決它!新的一年,勇氣多一點,畏懼少一分,心懷希望,砥礪前行。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,366評論 25 708
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,715評論 19 139
  • 簡之以筆,書以心章。
    小人物的玩笑閱讀 189評論 0 0
  • 12點的夜!月光打的通明… 只想拽著日子的袖口,想他停一?!?一個人走出高鐵站,第一站就是平江路,白墻黑瓦,弄堂四...
    夏沫er閱讀 763評論 2 5

友情鏈接更多精彩內(nèi)容