微軟正式發(fā)布Visual Studio 2013 RTM版,微軟還發(fā)布了Visual Studio 2013的最終版本、.NET 4.5.1以及Team Foundation Server 2013。下面我們體驗(yàn)下Visual Studio 2013 Web開(kāi)發(fā)方面有哪些特性,具體可以參看http://www.asp.net/visual-studio/overview/2013/release-notes。
1、.NET Framework 2.0/3.0/3.5/4.0/4.5/4.5.1 支持
Visual Studio 2013 從更方面來(lái)說(shuō)比VS2012有很多改進(jìn)的地方,可以用vs2013替代vs2012了。你仍然可以在VS2013中制作開(kāi)發(fā)ASP.NET 2應(yīng)用程序。你可以用你自己的視圖引擎,你自己的ORM,你自己的特性,你自己的構(gòu)架,你自己的組件。
2、ONE ASP.NET
微軟對(duì)ONE ASP.NET的支持更加完善了。
3、瀏覽器鏈接
這個(gè)功能非常不錯(cuò),可以設(shè)置設(shè)置多個(gè)瀏覽器作為你的默認(rèn)瀏覽器。用瀏覽方式對(duì)話框選擇IE和Chrome作為我的默認(rèn)瀏覽器(按住Ctrl健多選瀏覽方式)。
現(xiàn)在,按Ctrl-F5打開(kāi)兩個(gè)瀏覽器:
在About.cshtml里改動(dòng)一些文本。將鼠標(biāo)懸停在工具欄上的瀏覽器鏈接按鈕上:
它知道兩個(gè)瀏覽器正在用SignalR和JavaScript與VS對(duì)話,你可以敲代碼和html腳本并按下Ctrl+Alt+Enter鍵刷新所有連接的瀏覽器,或者你點(diǎn)擊瀏覽器鏈接列表
更有趣的是,瀏覽器鏈接是可自擴(kuò)展的。Mads Kristensen已經(jīng)用Web Essentials做到了這點(diǎn)并且向Browser Link里添加了擴(kuò)展?梢詮脑创a【https://github.com/madskristensen/WebEssentials2013】編譯!Web Essentials是開(kāi)源的,所以我可以通過(guò)讀代碼來(lái)了解這些是怎么回事。
4、引入"Bootstrap"庫(kù),版本是3.0
ASP.NET MVC 5
5、Entity Framework 6
Entity Framework 6 是EF開(kāi)源后的第一個(gè)版本,可以兼容Mono,也就是EF6可以在Mono上運(yùn)行的,之前EF1-5都不能再M(fèi)ono上。而且Entity Framework Power Tools Beta 4新增EF6和Visual Studio 2013支持。
6、Microsoft.AspNetEntity Framework Power Tools Beta 4新增EF6和Visual Studio 2013支持.Identity: ASP.NET Identity 是構(gòu)建 ASP.NET web 應(yīng)用程序的一種新的身份認(rèn)證系統(tǒng)。ASP.NET Identity 可以讓您的應(yīng)用程序擁有登錄功能,并可以輕松地自定義登錄用戶的相關(guān)數(shù)據(jù)。
ASP.NET Identity 的功能如下:
ASP.NET Identity 系統(tǒng)
ASP.NET Identity 可用于所有的ASP.NET框架,如ASP.NET MVC,Web窗體,Web頁(yè),Web API和SignalR
簡(jiǎn)單的彌補(bǔ)關(guān)于用戶的配置數(shù)據(jù)
當(dāng)在你的應(yīng)用程序中創(chuàng)建新用戶時(shí),現(xiàn)在很容易為其添加額外信息。例如.. 假如你想在用戶注冊(cè)時(shí)添加一個(gè)生日選項(xiàng),此時(shí)會(huì)變的很容易。ASP.NET Identity 使用 Entity Framework Code First 并容易對(duì) POCO 類進(jìn)行擴(kuò)展。
持久性控制
默認(rèn)情況下 ASP.NET Identity 也將在數(shù)據(jù)庫(kù)中存儲(chǔ)所有的用戶信息。使用 Entity Framework Code First 可把所有用持久性機(jī)制實(shí)現(xiàn)。如果您的應(yīng)用需要,這些信息可以使用在不同的存儲(chǔ)機(jī)制,如SharePoint,Azure表服務(wù),沒(méi)有SQL數(shù)據(jù)庫(kù)的情況等,它還可以為不同的存儲(chǔ)供應(yīng)商提供支持。
單元測(cè)試
ASP.NET Identity 可以是你的Web應(yīng)用程序擁有更多的單元測(cè)試功能。
簡(jiǎn)單的角色提供程序
簡(jiǎn)單的角色提供程序,可以讓你使用角色限制訪問(wèn)所控制的部分或全部應(yīng)用程序?梢暂p松地創(chuàng)建,如“管理員”的角色,或向角色中添加指定的用戶。
基于聲明
ASP.NET Identity 支持基于聲明的用戶身份驗(yàn)證,用戶的身份被表示為一組的權(quán)利請(qǐng)求,這就是一個(gè)聲明。
外部登錄
你可以輕松添加外部登錄功能,如使用微軟帳戶、 Facebook、 Twitter 和谷歌賬號(hào)登陸到你的應(yīng)用中,應(yīng)用程序只存儲(chǔ)用戶特定的數(shù)據(jù)。 您也可以使用 Windows Azure Active Directory 添加登錄功能,并在應(yīng)用程序中存儲(chǔ)用戶特定的數(shù)據(jù)。
7、ASP.NET Web API 2 OWIN的支持和整合
ASP.NET Web API現(xiàn)在完全支持OWIN(Open Web Interface for .NET),并且可運(yùn)作于任何兼容于OWIN的主機(jī)(Host)。
Open Web Interface for .NET(OWIN)定義一個(gè)介于Web服務(wù)器與Web應(yīng)用程序之間的抽象層。OWIN將網(wǎng)頁(yè)應(yīng)用程序從網(wǎng)頁(yè)服務(wù)器分離出來(lái),然后將應(yīng)用程序托管于OWIN的程序而離開(kāi)IIS之外。
來(lái)源:http://www.asp.net/aspnet/overview/owin-and-katana/an-overview-of-project-katana
using Microsoft.Owin;
using Owin;
[assembly: OwinStartupAttribute(typeof(WebApplication2013.Startup))]
namespace WebApplication2013
{
public partial class Startup
{
public void Configuration(IAppBuilder app)
{
ConfigureAuth(app);
}
}
}
今天新裝了 Visual Studio 2013, 使用 VS2013 打開(kāi)一個(gè)現(xiàn)有的 WEB 網(wǎng)站, 在調(diào)試網(wǎng)站的時(shí)候出現(xiàn)在了腳本錯(cuò)誤,一個(gè)文件名叫 "browserLink", ???, 項(xiàng)目中沒(méi)有使用這些文件啊, 難道中毒了?
仔細(xì)看了一個(gè) VS 里面的信息, 發(fā)現(xiàn) browserLink 文件引用到了頁(yè)面, 然后在流程器里查看源代碼, 在最下面發(fā)現(xiàn)了這么一段代碼:
<!-- Visual Studio Browser Link --> <script type="application/json" id="__browserLink_initializationData"> {"appName":"Internet Explorer","requestId":"13a655707f184a1d94d45cad5e20e6cc"} </script> <script type="text/javascript" src="http://localhost:3925/609bc31e3c0549e09b2b8b4504b0be13/browserLink" async="async"></script> <!-- End Browser Link -->
看到注釋就放心了, 應(yīng)該是 Visual Studio 2013 的新功能, 然后 google 了一把, Browser Link 卻實(shí)是一個(gè)新功能。
什么是 Browser Link ?
這個(gè) Browser Link 的功能就是通過(guò)一個(gè)腳本文件架起流程器和 Visual Studio IDE 之前的一個(gè)通信橋梁, 在啟用 Browser Link 后, Visual Studio 會(huì)給網(wǎng)站注入一個(gè) IHttpModule 模塊對(duì)象, 然后在每個(gè)頁(yè)面都會(huì)注冊(cè)一段上面的腳本。
Browser Link 功能使用 SignalR 技術(shù)實(shí)現(xiàn)的。
說(shuō)了這么多, Browser Link 功能到底是用來(lái)干什么用的?
現(xiàn)在 Broswer Link 功能比較簡(jiǎn)單,就是用來(lái)在 Visual Studio IDE 可以刷新瀏覽器中已經(jīng)打開(kāi)的頁(yè)面, 為什么要在 Visual Studio IDE 中刷新頁(yè)面?
有這么一個(gè)應(yīng)用場(chǎng)景:假如你在開(kāi)發(fā)一個(gè)頁(yè)面,這個(gè)頁(yè)面需要兼容 IE, GOOGLE, FIREFOX 和移動(dòng)瀏覽器, 有可能你會(huì)同時(shí)使用這些流程器打開(kāi)你的頁(yè)面, 如果發(fā)現(xiàn)有某種問(wèn)題,回到 VS IDE 進(jìn)行修改, 修改完后可以在 Visual Studio IDE 點(diǎn) "Refresh Linked Browsers" 來(lái)刷新所有瀏覽器以查看效果。
現(xiàn)在這個(gè) "Browser Link " 只有這么一個(gè)刷新功能, 但是 Browser Link 功能可以編寫(xiě)擴(kuò)展功能,可以自定義一些自己需要的功能。