aspnetmvc4開發指南源碼
❶ 如何調試MVC4的代碼
下載了 http //aspnetwebstack codeplex com/SourceControl/list/changesets 這上面
.NET 4.0 RTM的源碼,
裝了一個git,然後下載就可以了
git clone https //git01 codeplex com/aspnetwebstack.git
時間稍微長了點兒,半個小時吧;
然後裡面src全是MVC4的源碼(其實很大一部分都在裡面了)
解決反感是runtime.sln的,打開之後,在裡面新建一個MVC4的項目,
這里有個問題,我下載的MVC4,在
system.web.mvc項目里Properties\CommonAssembley.cs里,全是5.0.0.0的版本號,
我把他改成了5.0.0.1
#if
ASPNETMVC [assembly: AssemblyVersion("5.0.0.1")] [assembly:
AssemblyFileVersion("5.0.0.1")] [assembly: AssemblyProct("Microsoft ASP.NET
MVC")] #elif ASPNETWEBPAGES
然後修改根目錄下的 web.config
<appSettings>
<add
key="webpages:Version" value="3.0.0.0" />
<add key="webpages:Enabled" value="false" />
<add key="PreserveLoginUrl" value="true" />
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusivejavaScriptEnabled" value="true" />
</appSettings>
這里之所以改成3.0.0.0的原因,是因為在我下載的源碼里,他的版本號就是3.0,
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Web.Helpers"
publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-2.0.0.0"
newVersion="3.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Mvc"
publicKeyToken="31bf3856ad364e35" />
<bindingRedirect
oldVersion="1.0.0.0-4.0.0.0" newVersion="5.0.0.1" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.WebPages"
publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-2.0.0.0"
newVersion="3.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="EntityFramework"
publicKeyToken="b77a5c561934e089" />
<bindingRedirect oldVersion="1.0.0.0-5.0.0.0"
newVersion="5.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="WebGrease"
publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-1.3.0.0"
newVersion="1.3.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime> 這里的改成了我自己的版本號
然後修改view下面的web.config
<configSections>
<sectionGroup name="system.web.webPages.razor"
type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup,
System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral,
PublicKeyToken=31BF3856AD364E35">
<section name="host"
type="System.Web.WebPages.Razor.Configuration.HostSection,
System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral,
PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
<section name="pages"
type="System.Web.WebPages.Razor.Configuration.RazorPagesSection,
System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral,
PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
</sectionGroup>
</configSections>
這里修改成了3.0,當然具體是什麼,看你自己下載的,但是我覺得大部分應該跟我的是一樣的(環境VS2012,源碼4.0 RTM)
<system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory,
System.Web.Mvc, Version=5.0.0.1,
Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<pages pageBaseType="System.Web.Mvc.WebViewPage">
<namespaces>
<pages
validateRequest="false"
pageParserFilterType="System.Web.Mvc.ViewTypeParserFilter,
System.Web.Mvc, Version=5.0.0.1,
Culture=neutral, PublicKeyToken=31BF3856AD364E35"
pageBaseType="System.Web.Mvc.ViewPage, System.Web.Mvc,
Version=5.0.0.1, Culture=neutral,
PublicKeyToken=31BF3856AD364E35"
userControlBaseType="System.Web.Mvc.ViewUserControl, System.Web.Mvc,
Version=5.0.0.1,
Culture=neutral,
PublicKeyToken=31BF3856AD364E35">
同樣,修改之(具體是不是不修改也成,我就不知道了,我是按照網上的方法改的,最後的地方,會給出連接大家注意學習吧)
這樣,配置文件和MVC代碼中的版本號,就修改完了,
然後打開VS2012的命令行,執行
Run
"sn.exe -Vr *,31BF3856AD364E35" in the Visual Command line (哈哈,你看,我真的是COPY的,原創的東西幾乎沒有)
然後把項目中的system.web.mvc的引用,改到你的MVC4的源碼里的項目,當然,不止這一個,不然會有很多地方報錯的,大致的DLL有 :
system.web.razot; system.web.webpages;system.web.webpages.deployment;
system.web.webpages.razor; 這里不全沒關系,網頁上會明確提示少哪個的.
如果出現了一個類型轉換的錯誤:
用戶代碼未處理
System.InvalidCastException
HResult=-2147467262
Message=[A]System.Web.WebPages.Razor.Configuration.HostSection 無法強制轉換為
[B]System.Web.WebPages.Razor.Configuration.HostSection。類型 A
源自「System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35」(在上下文「Default」中的「C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.WebPages.Razor\v4.0_2.0.0.0__31bf3856ad364e35\System.Web.WebPages.Razor.dll」位置處)。類型
B 源自「System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35」(在上下文「Default」中的「C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary
ASP.NET
Files\root\49f25bf0\9ce908d5\assembly\dl3\70f2ab4b\b0630cdc_834fce01\System.Web.WebPages.Razor.dll」位置處)。
Source=System.Web.WebPages.Razor
這個錯誤,就是我為什麼要該system.web.webpages的版本好的原因了; 如果出現其他DLL,大家也可以隨著改一下;
之後,就可以在頁面中隨便加空間,就能看到斷點的執行了,好運;
當然,網上還有個傢伙說不用修改源代碼,但是要下載SkipStrongNames的一個東西,但是我點了連接,提示我下載已經移除了,不知道怎麼回事,要是有搞定了的同學,也請通知我下哈,學習學習;
❷ asp.net 4.0 與asp.net mvc 什麼關系 asp.net mvc什麼東西 開發用asp.net 4.0還是asp.net mvc好
asp.net是一個網站開發模型,它包括webform和MVC兩種
我想你要問的應該是webform和MVC的區別吧
這兩種其實區別很大,但不能說哪個更好,看情況而定了。在做大型項目中用MVC是比較好的選擇
asp.net mvc是個什麼東東,這里說不清楚,不過你可以去官網看看:www.asp.net中MVC版塊
❸ ASP.NET MVC4里,我在控制器的某個方法上加了[RequireHttps],沒有加的也用到了Https
你i說的 那個問題我沒有遇到過, 你先看看這個http://www.cnblogs.com/snowdream/archive/2009/08/07/use-https-in-aspnet-mvc.html
❹ 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隻能過溫飽的生活,但是我想我足夠了。我至少不用每天都要靠父母養,我自己也能養活自己的。我想只要我繼續努力,我工資一定會翻倍的。
把本文寫出來,希望能讓和我一樣的沒有基礎的朋友有信心,其實我們沒有必要自卑,我們不比別人笨,只要我們肯努力,我們一樣會成功。
…………………………………………………………
❺ 如何調試MVC4的代碼
裝了一個git,然後下載就可以了
git clone git01.codeplex.com/aspnetwebstack.git
時間稍微長了點兒,半個小時吧;
然後裡面src全是MVC4的源碼(其實很大一部分都在裡面了)
解決反感是runtime.sln的,打開之後,在裡面新建一個MVC4的項目,
這里有個問題,我下載的MVC4,在 system.web.mvc項目里Properties\CommonAssembley.cs里,全是5.0.0.0的版本號,
我把他改成了5.0.0.1
#if ASPNETMVC [assembly: AssemblyVersion("5.0.0.1")] [assembly: AssemblyFileVersion("5.0.0.1")] [assembly: AssemblyProct("Microsoft ASP.NET MVC")] #elif ASPNETWEBPAGES
然後修改根目錄下的 web.config
<appSettings>
<add key="webpages:Version" value="3.0.0.0" />
<add key="webpages:Enabled" value="false" />
<add key="PreserveLoginUrl" value="true" />
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
</appSettings> 這里之所以改成3.0.0.0的原因,是因為在我下載的源碼里,他的版本號就是3.0,
<runtime>
❻ 如何調試mvc4的代碼
下載了 http //aspnetwebstack codeplex com/SourceControl/list/changesets 這上面
.NET 4.0 RTM的源碼,
裝了一個git,然後下載就可以了
git clone https //git01 codeplex com/aspnetwebstack.git
時間稍微長了點兒,半個小時吧;
然後裡面src全是MVC4的源碼(其實很大一部分都在裡面了)
解決反感是runtime.sln的,打開之後,在裡面新建一個MVC4的項目,
這里有個問題,我下載的MVC4,在
system.web.mvc項目里Properties\CommonAssembley.cs里,全是5.0.0.0的版本號,
我把他改成了5.0.0.1
#if
ASPNETMVC [assembly: AssemblyVersion("5.0.0.1")] [assembly:
AssemblyFileVersion("5.0.0.1")] [assembly: AssemblyProct("Microsoft ASP.NET
MVC")] #elif ASPNETWEBPAGES
然後修改根目錄下的 web.config
<appSettings>
<add
key="webpages:Version" value="3.0.0.0" />
<add key="webpages:Enabled" value="false" />
<add key="PreserveLoginUrl" value="true" />
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
</appSettings>
這里之所以改成3.0.0.0的原因,是因為在我下載的源碼里,他的版本號就是3.0,
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Web.Helpers"
publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-2.0.0.0"
newVersion="3.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Mvc"
publicKeyToken="31bf3856ad364e35" />
<bindingRedirect
oldVersion="1.0.0.0-4.0.0.0" newVersion="5.0.0.1" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.WebPages"
publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-2.0.0.0"
newVersion="3.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="EntityFramework"
publicKeyToken="b77a5c561934e089" />
<bindingRedirect oldVersion="1.0.0.0-5.0.0.0"
newVersion="5.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="WebGrease"
publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-1.3.0.0"
newVersion="1.3.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime> 這里的改成了我自己的版本號
然後修改view下面的web.config
<configSections>
<sectionGroup name="system.web.webPages.razor"
type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup,
System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral,
PublicKeyToken=31BF3856AD364E35">
<section name="host"
type="System.Web.WebPages.Razor.Configuration.HostSection,
System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral,
PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
<section name="pages"
type="System.Web.WebPages.Razor.Configuration.RazorPagesSection,
System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral,
PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
</sectionGroup>
</configSections>
這里修改成了3.0,當然具體是什麼,看你自己下載的,但是我覺得大部分應該跟我的是一樣的(環境VS2012,源碼4.0 RTM)
<system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory,
System.Web.Mvc, Version=5.0.0.1,
Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<pages pageBaseType="System.Web.Mvc.WebViewPage">
<namespaces>
<pages
validateRequest="false"
pageParserFilterType="System.Web.Mvc.ViewTypeParserFilter,
System.Web.Mvc, Version=5.0.0.1,
Culture=neutral, PublicKeyToken=31BF3856AD364E35"
pageBaseType="System.Web.Mvc.ViewPage, System.Web.Mvc,
Version=5.0.0.1, Culture=neutral,
PublicKeyToken=31BF3856AD364E35"
userControlBaseType="System.Web.Mvc.ViewUserControl, System.Web.Mvc,
Version=5.0.0.1,
Culture=neutral,
PublicKeyToken=31BF3856AD364E35">
同樣,修改之(具體是不是不修改也成,我就不知道了,我是按照網上的方法改的,最後的地方,會給出連接大家注意學習吧)
這樣,配置文件和MVC代碼中的版本號,就修改完了,
然後打開VS2012的命令行,執行
Run
"sn.exe -Vr *,31BF3856AD364E35" in the Visual Command line (哈哈,你看,我真的是COPY的,原創的東西幾乎沒有)
然後把項目中的system.web.mvc的引用,改到你的MVC4的源碼里的項目,當然,不止這一個,不然會有很多地方報錯的,大致的DLL有 :
system.web.razot; system.web.webpages;system.web.webpages.deployment;
system.web.webpages.razor; 這里不全沒關系,網頁上會明確提示少哪個的.
如果出現了一個類型轉換的錯誤:
用戶代碼未處理
System.InvalidCastException
HResult=-2147467262
Message=[A]System.Web.WebPages.Razor.Configuration.HostSection 無法強制轉換為
[B]System.Web.WebPages.Razor.Configuration.HostSection。類型 A
源自「System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35」(在上下文「Default」中的「C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.WebPages.Razor\v4.0_2.0.0.0__31bf3856ad364e35\System.Web.WebPages.Razor.dll」位置處)。類型
B 源自「System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35」(在上下文「Default」中的「C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary
ASP.NET
Files\root\49f25bf0\9ce908d5\assembly\dl3\70f2ab4b\b0630cdc_834fce01\System.Web.WebPages.Razor.dll」位置處)。
Source=System.Web.WebPages.Razor
這個錯誤,就是我為什麼要該system.web.webpages的版本好的原因了; 如果出現其他DLL,大家也可以隨著改一下;
之後,就可以在頁面中隨便加空間,就能看到斷點的執行了,好運;
❼ 如何調試MVC4的代碼
下載了 http //aspnetwebstack codeplex com/SourceControl/list/changesets 這上面
.NET 4.0 RTM的源碼,
裝了一個git,然後下載就可以了
git clone https //git01 codeplex com/aspnetwebstack.git
時間稍微長了點兒,半個小時吧;
然後裡面src全是MVC4的源碼(其實很大一部分都在裡面了)
解決反感是runtime.sln的,打開之後,在裡面新建一個MVC4的項目,
這里有個問題,我下載的MVC4,在
system.web.mvc項目里Properties\CommonAssembley.cs里,全是5.0.0.0的版本號,
我把他改成了5.0.0.1
#if
ASPNETMVC [assembly: AssemblyVersion("5.0.0.1")] [assembly:
AssemblyFileVersion("5.0.0.1")] [assembly: AssemblyProct("Microsoft ASP.NET
MVC")] #elif ASPNETWEBPAGES
然後修改根目錄下的 web.config
<appSettings>
<add
key="webpages:Version" value="3.0.0.0" />
<add key="webpages:Enabled" value="false" />
<add key="PreserveLoginUrl" value="true" />
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
</appSettings>
這里之所以改成3.0.0.0的原因,是因為在我下載的源碼里,他的版本號就是3.0,
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Web.Helpers"
publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-2.0.0.0"
newVersion="3.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Mvc"
publicKeyToken="31bf3856ad364e35" />
<bindingRedirect
oldVersion="1.0.0.0-4.0.0.0" newVersion="5.0.0.1" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.WebPages"
publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-2.0.0.0"
newVersion="3.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="EntityFramework"
publicKeyToken="b77a5c561934e089" />
<bindingRedirect oldVersion="1.0.0.0-5.0.0.0"
newVersion="5.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="WebGrease"
publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-1.3.0.0"
newVersion="1.3.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime> 這里的改成了我自己的版本號
然後修改view下面的web.config
<configSections>
<sectionGroup name="system.web.webPages.razor"
type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup,
System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral,
PublicKeyToken=31BF3856AD364E35">
<section name="host"
type="System.Web.WebPages.Razor.Configuration.HostSection,
System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral,
PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
<section name="pages"
type="System.Web.WebPages.Razor.Configuration.RazorPagesSection,
System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral,
PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
</sectionGroup>
</configSections>
這里修改成了3.0,當然具體是什麼,看你自己下載的,但是我覺得大部分應該跟我的是一樣的(環境VS2012,源碼4.0 RTM)
<system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory,
System.Web.Mvc, Version=5.0.0.1,
Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<pages pageBaseType="System.Web.Mvc.WebViewPage">
<namespaces>
<pages
validateRequest="false"
pageParserFilterType="System.Web.Mvc.ViewTypeParserFilter,
System.Web.Mvc, Version=5.0.0.1,
Culture=neutral, PublicKeyToken=31BF3856AD364E35"
pageBaseType="System.Web.Mvc.ViewPage, System.Web.Mvc,
Version=5.0.0.1, Culture=neutral,
PublicKeyToken=31BF3856AD364E35"
userControlBaseType="System.Web.Mvc.ViewUserControl, System.Web.Mvc,
Version=5.0.0.1,
Culture=neutral,
PublicKeyToken=31BF3856AD364E35">
同樣,修改之(具體是不是不修改也成,我就不知道了,我是按照網上的方法改的,最後的地方,會給出連接大家注意學習吧)
這樣,配置文件和MVC代碼中的版本號,就修改完了,
然後打開VS2012的命令行,執行
Run
"sn.exe -Vr *,31BF3856AD364E35" in the Visual Command line (哈哈,你看,我真的是COPY的,原創的東西幾乎沒有)
然後把項目中的system.web.mvc的引用,改到你的MVC4的源碼里的項目,當然,不止這一個,不然會有很多地方報錯的,大致的DLL有 :
system.web.razot; system.web.webpages;system.web.webpages.deployment;
system.web.webpages.razor; 這里不全沒關系,網頁上會明確提示少哪個的.
如果出現了一個類型轉換的錯誤:
用戶代碼未處理
System.InvalidCastException
HResult=-2147467262
Message=[A]System.Web.WebPages.Razor.Configuration.HostSection 無法強制轉換為
[B]System.Web.WebPages.Razor.Configuration.HostSection。類型 A
源自「System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35」(在上下文「Default」中的「C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.WebPages.Razor\v4.0_2.0.0.0__31bf3856ad364e35\System.Web.WebPages.Razor.dll」位置處)。類型
B 源自「System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35」(在上下文「Default」中的「C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary
ASP.NET
Files\root\49f25bf0\9ce908d5\assembly\dl3\70f2ab4b\b0630cdc_834fce01\System.Web.WebPages.Razor.dll」位置處)。
Source=System.Web.WebPages.Razor
這個錯誤,就是我為什麼要該system.web.webpages的版本好的原因了; 如果出現其他DLL,大家也可以隨著改一下;
之後,就可以在頁面中隨便加空間,就能看到斷點的執行了,好運;
❽ 求C# MVC4 做的上傳附件下載附件的功能 附件路徑存在資料庫中 附件存在項目下的uploading文件中 求源碼
建議使用uploadfy插件,但有一點,配置文件里得改,不然不能上傳大文件
下載在Controller里返回FileStreamResult就行了
return File(new FileStream(fullPath, FileMode.Open), "application/octet-stream", Server.UrlEncode(Path.GetFileName(fullPath)));
❾ asp.net,我使用MVC4框架搭建了一個項目,我想實現多國語言切換的功能
這個要根據你多語言是怎麼做的才能確定用什麼方式吧。
如果你是用語言包的方式來做的,那所有東西用 Html.Display 來顯示。
如果你是用Area 來做的。那就改寫路由唄。