mvc 記一次「專案」的歷程

2022-01-12 16:28:04 字數 1903 閱讀 7952

大二上半學期因為選修課的原因,答應幫老師完善學院的選課系統。在這之前沒有做過乙個可以成為「專案」的專案,本著挑戰自己的原則和可以不上選修課的福利,斷斷續續用了一學期的時間來完善這個選課系統。

接受這個專案的時候,專案已經被乙個學姐做的差不多了,基本框架模型都有了。值得一提的是,學姐是現學現做,用的是我軟偉大的asp.net webform,所見即所得!特別佩服學姐,在沒有任何基礎的前提下,能一步一步搭出乙個基本框架。所以我的核心工作就是優化、新增一些細節功能和修改一些邏輯上的錯誤。我既然是接手,所以就在基礎上繼續縫縫補補,沒有用什麼三層,就是code-behind,所有的**都堆在後台cs中,哪兒有錯改哪兒,那兒不夠哪兒加。在臨近期末的時候終於給老師提交了乙個能用的版本。可是總覺著差點什麼。所以就在寒假這幾天,把整個專案用mvc重寫了一遍,過程比較順暢,哪兒不會查哪兒,歷時三天,終於實現了大多數功能。(值得一提的是,學校裡許多人做著一些小專案,用的大多是winform,webform,當然程式語言都是c#。希望.net的生態能越來越好,希望大家能從使用.net到愛上.net)

重寫的過程中,用到的技術有asp.net mvc,entityframework,sql,html,jquery,ajax...

說是用到的技術,實則都是用了各自的皮毛,唯一核心是mvc,之前大概學習過mvc,但基本是只了解mvc是個什麼,核心的asp.net技術知道的還是不多;用ef主要是為了查詢資料方便(最糾結的是是vs安裝有問題,migrations不能用);至於直接用sql查詢,關鍵還是對ef了解的太少,不會用ef操作已經存在的資料庫;有因為是做**,前端技術還是要用一些的,不過用來用去,最多的還是jquery的選擇器。

故事背景和技術背景談完了,再談談這三天遇到的種種問題。。

2.mvc:對於mvc中的m應該有兩種解讀吧,一種是viewmodel,還有一種就是model了.實際在用的時候,沒有去糾結viewmodel還是model,想著那個方便就用哪個了,不過鐵的原則還是不變,

viewmodel絕對不用到和view不相關的地方;

其次布局頁和分布頁也是重點,個人理解,目的還是在於**復用吧;

由於用到ajax,所以許多資料用json格式傳輸,所以不得不提到乙個jsonresult,我是這麼用的。

jsonresult json=new

jsonresult

最後return json;就可以。

3.sql:關於sql,用的是乙個sqlhelper,挺好用的。

這兒有一點要提,之前一直不懂如何把mvc+ef專案部署到本地iis上,後來發現發現,可以讓ef直接操作sqlserver中的資料庫,這樣無論部署在哪兒都沒問題了。

讓ef直接操作sqlserver中的資料庫,終點是連線字串要配置正確。

<

connectionstrings

>

<

add

name

="constr"

connectionstring

="data source=cq-pc;initial catalog=學生資訊;user id=demo;password=123456"

providername

="system.data.sqlclient"

>

add>

connectionstrings

>

然後再dbcontext中指定連線字串即可。例如:

public

class

userinfocontext:dbcontext

public dbsetuser

}

這兒指定的連線字串是「constr」,這個一定要相同。

其實還有許多遇到的問題,有機會再寫。

總之,這次這個專案的心得就是「

我只是在重複做著資料庫的curd,我是乙個菜鳥。」

記一次專案的死鎖分析

公司專案使用多執行緒開發,因此使用gdb exec c corefile執行core檔案後,使用bt列印堆疊資訊 看不出問題,需要進入到執行緒內部分析。1.info threads 列印執行緒資訊 可以看到有多個 lll lock wait 看到這裡,我們推測可能是鎖出現問題了。那麼繼續往,進入到執...

記一次現場部署專案的經歷

給伺服器分盤 右擊計算機 管理 儲存 磁碟管理,按需求分配合適的磁碟空間 根據公司建立文件,命名規範,分別建立資料庫資料夾,應用資料夾等等 搭建環境,jdk1.8,tomcat7,oracle11,plsql等 匯入備份資料庫檔案到資料庫伺服器.匯入語句 impdp userid 物件名稱 物件密碼...

記一次帶專案的經歷,太狗血

2019年9月,非常幸運,有了接觸帶專案的經歷,本人是新手,剛進新公司,小白乙個,第一天,運維給我安裝了一台新電腦,主機是很小的那種dell,比較精緻,第一天,主要熟悉公司的環境,沒人來搭理我,第二天,聽取領導安排,直接讓我去客戶現場,我想說,領導是有多大的勇氣來讓我這個新手,剛來公司第二天就讓我去...