『壹』 aspnet怎麼寫前端樣式
直接將樣式控制放在單個HTML元素內,稱為內聯式或行內樣式。該樣式通過style屬性來控制每個元素的外觀,直觀但是很檔衡繁瑣。除非具有相同樣式的元素較少,否則很少採用。 在網頁的head部分定義或導入的樣式,稱答蠢游為級聯式樣式。該樣式可以實現將網頁結構和表現分離,這樣,當修改某些元素的樣式清銷時,只需要修改head部分定義或引入的樣式
『貳』 ASP.NET MVC開發環境配置
asp.net mvc 開發環境:1. vs2008(sp1)+asp.net3.5(sp1)+asp.net mvc 2.0安裝包(AspNetMVC2_VS2008.exe)2. vs2010自帶兩者任選一個即可
『叄』 asp.net mvc是什麼
三層架構中,DAL(數據訪問層)、BLL(業務邏輯層)、UI(顯示)層各司其職,意在職責分離。
MVC是 Model-View-Controller,嚴格說這三個加起來以後才是三層架構中的顯示層,也就是說,MVC把三層架構中的UI層再度進行了分化,分成了控制器、視圖、實體三個部分,控制器完成頁面邏輯,通過實體來與界面層完成通話;而C層直接與三層中的BLL進行對話。
…………………………………………………………
如果對aspnet感興趣,看看一個大專生怎麼自學aspnet到找到工作。
先做個自我介紹,我07年考上一所很爛專科民辦的學校,學的是生物專業,具體的學校名稱我就不說 出來獻丑了。09年我就輟學了,我在那樣的學校,一年學費要1萬多,但是根本沒有人學習,我實在看不 到希望,我就退學了。
退學後我也迷茫,大專都沒有畢業,我真的不知道我能幹什麼,我在糾結著我能做什麼。所以輟學後 我一段時間,我想去找工作,因為我比較沉默寡言,不是很會說話,我不適合去應聘做業務。我想應聘 做技術的,可是處處碰壁。
一次偶然的機會,我才聽到aspnet這個行業。那天我去新華書店,在計算機分類那邊想找本書學習 。後來有個女孩子走過來,問我是不是讀計算機的,有沒有興趣學習aspnet,然後給我介紹了一下 aspnet現在的火熱情況,告訴我學aspnet多麼的有前景,給我了一份傳單,aspnet培訓的廣告。聽了 她的介紹,我心裡癢癢的,確實我很想去學會一門自己的技術,靠自己的雙手吃飯。
回家後,我就上網查了下aspnet,確實是當今比較熱門的行業,也是比較好找工作的,工資也是相 對比較高。我就下決心想學aspnet了。於是我去找aspnet培訓的相關信息,說真的,我也很迷茫,我 不知道培訓是否真的能像他們宣傳的那樣好,所以我就想了解一段時間再做打算。
後來,我在網路知道看到一篇讓我很鼓舞的文章是一個aspnet高手介紹沒有基礎的朋友怎麼自學入 門學aspnet,文章寫的很好,包含了如何學習,該怎麼學習。他提到一個方法就是看視頻,因為看書實 在太枯燥和費解的,很多我們也看不懂。這點我真的很認同,我自己看書往往看不了幾頁。
我在想,為什麼別人都能自學成才,我也可以的!我要相信自己,所以我就想自學,如果實在學不會 我再去培訓。
主意一定,我就去搜索aspnet的視頻,雖然零星找到一些aspnet的視頻,但是都不系統,我是想找 一個能夠告訴我該怎麼學的視頻,一套從入門到精通的視頻,一個比較完整的資料,最好能有老師教, 不懂可以請教的。
後來我又找到一份很好的視頻,是在IT學習聯盟推出的一份視頻《零基礎aspnet就業班》(喜歡《 零基礎aspnet就業班》的可以復制 sina.lt/bsjr 粘貼瀏覽器地址欄按回車鍵即打開)
下面介紹下我的學習流程,希望對和我一樣完全沒有基礎的朋友有所幫助。
收到他們寄過來的光碟後,我就開始學習了,由於我沒有什麼基礎,我就從最簡單的C#語言視頻教程 學起,話說簡單,其實我還是很多不懂的,只要重復多看幾遍,就能看懂。C#語言我差不多學了一個禮 拜,接下來我就學了winform,SQL Server,html/css/javaScript,差不多也就三個禮拜。我每天都在不 停的寫一些簡單的代碼,這樣一月後我基本掌握了aspnet的全部基礎。
接下來開始學習aspnet高級課程,老師幽默風趣而又輕松的課堂教課,使我發現原來學習aspnet並 不是一件很難的事情。之前我把aspnet基礎學得還不錯,到了到了aspnet高級部分,我覺不又不是很 難,可能老師太牛了,他能把復雜的問題講的比較通俗易懂,有些難點的地方我還是連續看了五六次, 把他弄懂。每天下午6點下班後,吃了飯,馬上跑回家。看視頻,買了幾本筆記本。當時,為了編程還花幾百元了台二手的台式電腦,配置一般,但編程是足夠的。一邊看視頻,一邊記筆記,把重點都記下來,還一邊跟著老師敲代碼,為了能盡早學會aspnet。每天都堅持學5-6個小時。經常學到晚上一點多才睡覺。星期六,日不用上班,每天7點多起床,學到晚上11,12點。那段時間特別辛苦,特別累。在學習aspnet的三個多月里,除了吃飯睡覺工作,剩餘的時間都在學習,因為我知道自己的計算機基礎不是很好,也沒有學過什麼計算機,相對於那些科班的人來說我要比他們付出更多的努力。我只能咬緊牙關,堅持下去,我不能放棄,我要完成我的夢想,我要讓我的家人過上好日子。終於三個多月後我把aspnet教程里的內容和項目都學完了,在學項目的過程中我發現項目特別重要,他能把你學過的知識全部聯系起來,能更好的理解你所學的知識。還有學習過程中,動手很重要,要經常跟著老師動手敲,動手吧,跟著做,一行一行的跟著敲,再試著加一些自己的功能,按照自己的思路敲一些代碼,收獲遠比干聽大的多。 如果遇到暫時對於一些思路不能理解的,動手寫,先寫代碼,慢慢你就會懂了。
於是我就到51job瘋狂的投簡歷,因為我學歷的問題,專科沒有畢業,說真的,大公司沒有人會要我,所以我投的都是民營的小公司,我希望自己的努力有所回報。沒有想過幾天過後,就有面試了,但是第一次面試我失敗了,雖然我自認為筆試很好,因為我之前做了准備,但是他們的要求比較嚴格,需要有一年的項目經驗,所以我沒有被選中。
後來陸續面試了幾家公司,終於功夫不負有心人。我終於面試上的,是在閔行的一家民營的企業,公司規模比較小,我的職務是aspnet開發程序員,但我也比較滿足,開的工資是3500一個月,雖然我知道在上海3500隻能過溫飽的生活,但是我想我足夠了。我至少不用每天都要靠父母養,我自己也能養活自己的。我想只要我繼續努力,我工資一定會翻倍的。
把本文寫出來,希望能讓和我一樣的沒有基礎的朋友有信心,其實我們沒有必要自卑,我們不比別人笨,只要我們肯努力,我們一樣會成功。
…………………………………………………………
『肆』 aspnet怎麼實現前後端分離
1、前後端分離,那後端就不應該修改前端項目文件,並且前後端交互都應通過ajax執行。所以,後端只需要提供api,前端在html調用api即可。
2、要提供api的話,aspx也可以做,但因為page的中間件會造成性能的浪費,可以用ashx去做。當然最推薦的還是使用webapi。
更多關於aspnet怎麼實現前後端分離,進入:https://m.abcgonglue.com/ask/5114751615595700.html?zd查看更多內容
『伍』 如何看待asp.netweb開發技術
先簡單回顧下asp.net過去十年
mvc流行前
asp.net的服務端控制項,將html和js一起封裝,很多客戶端事件自動通過生成的js將數據重新post回服務端。而對於很多剛入門的小夥伴來說,僅僅靠拖放控制項和寫C#代碼就可以實現一個可用的Web項目,大大降低了入門門檻。相應的,服務端控制項這種過度耦合的設計帶來了很多缺點:自定義控制難,難以純粹將前後端分離,導致asp.net從業人員既不能精通困神前段技術,又不能涉獵更多的後端技術(生態問題)。
這個年代,.net被貼上了「拖放控制項」的標簽。
mvc流行後
微軟推出了asp.netmvc,很多公司已經開始嘗試前後端分離。就模式上面來說,已經和其它語言平台基於mvc的web項目開發模式無異。
但是asp.net本身的服務框架太雜亂,尤其是艱難(如果你留意過,甚至可以說難產)支持asyncawait非同步編程後,他的同步上下文模型缺點太大:首先是源碼的結構混亂,其次是使用過程很多人容易造成死鎖,非同步方法使用不當導致請求已返回上下文已釋放然後找不到同步對象導致的異常。問題的根源是大部分程序員對線程了解不深,如果項目有正確的規范用法還好,一旦沒有,產生異常很多人根本不知道問題出在哪裡。博客園改造過程中就嘩尺桐出現過的死鎖,有興趣的可以去看看博客園官方博客寫過。
aspnetcore
新應用程序模型設計和代碼實現,我非常喜歡。其它的不說,看看那簡潔的Reqeust和Response對象,是不是就會讓你欣喜?再看看中間件管道,上下文(Context)通過委託鏈鏈一路傳遞,再也不用晦澀的同步上下文,也移除了和Windows安全相關的特徵。
整個架構更加清晰,喜歡做擴展的人絕對會有一日看盡長安花的快感。
自然性能也不用說,可以關注github上亂坦微軟之前做過的除了mvc之外的性能測試對比。
net生態
擁抱開源後,netcore,standard,aspnetcore,efcore等一系列實現全部都有了,明年的netcore3.0還會包含客戶端模型(wpf和winform,只能在windows下使用)。
github上面aspnet,dotnet,dotnet-architecture等分支包含大量微軟直接維護的開源項目。
開源社區大部分的項目已經跟進將三方組件基於standard標准打包。
微軟也久違地把散亂的文檔匯集到docs子域名下
萬事劇本,就欠生態!如果apache基金會下面的重要項目都有.net的分支,相信依靠netcore必定可以再次搶占不少的份額。
前景
微服務流行後,其實內部可以混合多種平台提供服務,用aspnetcore做對三方組件需求不太大的業務服務是完全的可以的,基於微軟一貫的作風,開發效率是很高的。
其實現在很多內部系統在用.net,只是面向互聯網相關的項目,更加需求豐富的三方資源,採用.net的比較少。不過很多大的公司都有.net的分支團隊。畢竟在桌面和開發效率上的優勢,還是有他存在的價值。
aspnet到底會如何發展,個人感覺還是要看社區的反應,要看生態是否能逐步豐富起來。
看在微軟這么努力的份上,個人挺希望他能夠扳回一局。
所以?
眼光放長遠一點,平台只是我們的工具,一個IT人不應當把自己的技術范圍限定到某一個平台。多學多積累,實際項目中應該針對需求、架構以及團隊做出選擇。
比如Java和.net同時掌握,各取所長,基於他們重疊性較高的原因,學習成本並不高。何況絕大部分的知識和平台並無關系。
個人見解純手打,歡迎大家評論或者提出意見。
『陸』 asp.net mvc3 項目怎麼開發API介面
Visual Studio為我們提供了專門用於創建ASP.NET Web API應用的項目模板,藉助於此項目模板提供的向導,我們可以「一鍵式」創建一個完整的ASP.NET Web API項目。在項目創建過程中,Visual Studio會自動為我們添加必要的程序集引用和配置,甚至會為我們自動生成相關的代碼,總之一句話:這種通過向導生成的項目在被創建之後其本身就是一個可執行的應用。
對於IDE提供的這種旨在提高生產效率的自動化機制,我個人自然是推崇的,但是我更推薦讀者朋友們去了解一下這些自動化機制具體為我們做了什麼?做這些的目的何在?哪些是必需的,哪些又是不必要的?正是基於這樣的目的,在接下來演示的實例中,我們將摒棄Visual Studio為我們提供的向導,完全在創建的空項目中編寫我們的程序。這些空項目體現在如右圖所示的解決方案結構中。
如右圖所示,整個解決方案一共包含6個項目,上面介紹的作為「聯系人管理器」的單頁Web應用對應著項目WebApp,下面的列表給出了包括它在內的所有項目的類型和扮演的角色。
·Common:這是一個空的類庫項目,僅僅定義了表示聯系人的數據類型而已。之所以將數據類型定義在獨立的項目中,只要是考慮到它會被多個項目(WebApi和ConsoleApp)所使用。
WebApi:這是一個空的類庫項目,表現為HttpController類型的Web API就定義在此項目中,它具有對Common的項目引用。
WebHost:這是一個空的ASP.NET Web應用,它實現了針對ASP.NET Web API的Web Host寄宿,該項目具有針對WebApi的項目引用。
SelfHost:這是一個空的控制台應用,旨在模擬ASP.NET Web API的Self Host寄宿模式,它同樣具有針對WebApi的項目引用。
WebApp:這是一個空的ASP.NET Web應用,代表「聯系人管理器」的網頁就存在於該項目之中,至於具體的聯系人管理功能,自然通過以Ajax的形式調用Web API來完成。
ConsoleApp:這是一個空的控制台應用,我們用它來模擬如何利用客戶端代理來實現對Web API的遠程調用,它具有針對Common的項目引用。
二、定義Web API
在正式定義Web API之前,我們需要在項目Common中定義代表聯系人的數據類型Contact。簡單起見,我們僅僅為Contact定義了如下幾個簡單的屬性,它們分別代表聯系人的ID、姓名、聯系電話、電子郵箱和聯系地址。
1: public class Contact
2: {
3: public string Id { get; set; }
4: public string Name { get; set; }
5: public string PhoneNo { get; set; }
6: public string EmailAddress { get; set; }
7: public string Address { get; set; }
8: }
表現為HttpController的Web API定義在WebApi項目之中,我們一般將ApiController作為繼承的基類。ApiController定義在「System.Web.Http.dll」程序集中,我們可以在目錄「%ProgramFiles%\Microsoft ASP.NET\ASP.NET Web Stack 5\Packages\」中找到這個程序集。具體來說,該程序集存在於子目錄「Microsoft.AspNet.WebApi.Core.5.0.0\lib\net45」中。
Web API體現在如下所示的ContactsController類型中。在該類型中,我們定義了Get、Post、Put和Delete這4個Action方法,它們分別實現了針對聯系人的查詢、添加、修改和刪除操作。Action方法Get具有一個表示聯系人ID的可預設參數,如果該參數存在則返回對應的聯系人,否則返回整個聯系人列表。由於ASP.NET Web API默認實現了Action方法與HTTP方法的映射,所以方法名也體現了它們各自所能處理請求必須採用的HTTP方法。
1: public class ContactsController: ApiController
2: {
3: static List<Contact> contacts;
4: static int counter = 2;
5:
6: static ContactsController()
7: {
8: contacts = new List<Contact>();
9: contacts.Add(new Contact { Id = "001", Name = "張三",
10: PhoneNo = "0512-12345678", EmailAddress = "[email protected]",
11: Address = "江蘇省蘇州市星湖街328號" });
12: contacts.Add(new Contact { Id = "002", Name = "李四",
13: PhoneNo = "0512-23456789", EmailAddress = "[email protected]",
14: Address = "江蘇省蘇州市金雞湖大道328號" });
15: }
16:
17: public IEnumerable<Contact> Get(string id = null)
18: {
19: return from contact in contacts
20: where contact.Id == id || string.IsNullOrEmpty(id)
21: select contact;
22: }
23:
24: public void Post(Contact contact)
25: {
26: Interlocked.Increment(ref counter);
27: contact.Id = counter.ToString("D3");
28: contacts.Add(contact);
29: }
30:
31: public void Put(Contact contact)
32: {
33: contacts.Remove(contacts.First(c => c.Id == contact.Id));
34: contacts.Add(contact);
35: }
36:
37: public void Delete(string id)
38: {
39: contacts.Remove(contacts.First(c => c.Id == id));
40: }
41: }
簡單起見,我們利用一個靜態欄位(contacts)表示存儲的聯系人列表。當ContactsController類型被載入的時候,我們添加了兩個ID分別為「001」和「002」的聯系人記錄。至於實現聯系人CRUD操作的Action方法,我們也省略了必要的驗證,對於本書後續的演示的實例,我們基本上也會採用這種「簡寫」的風格。