asp.net web form의새로운기능과 html5...

Post on 29-Mar-2020

0 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

2014년 3월웹기술의주류 ASP.NET,그전설을다시만나다!

-김경균책임연구원 / Microsoft MVP

Session 3

ASP.NET Web Form의새로운기능과 HTML5 지원

• One ASP.NET

• Bundling 과 Minification

• FriendlyUrl과 ViewSwitcher

• Strongly Typed Data Control

• Model Binding

• Html Encoded Expression

• Unobtrusive Validation

• HTML5 지원

• Bootstrap

Agenda

bundles.Add(new ScriptBundle(“번들경로“).Include(

"스크립트경로",

"스크립트경로",

"스크립트경로",

"스크립트경로"));

<%: System.Web.Optimization.Scripts.Render("번들경로") %>

ScriptManager.ScriptResourceMapping.AddDefinition("번들이름",new ScriptResourceDefinition{

Path=“번들경로”,});

<asp:ScriptManager runat="server"><Scripts>

<asp:ScriptReference Name=“번들이름” /></Scripts>

</asp:ScriptManager>

ScriptManager.ScriptResourceMapping.AddDefinition(“이름”,new ScriptResourceDefinition{

Path=“번들경로”,});

<asp:ScriptManager runat="server"><Scripts>

<asp:ScriptReference Name=“이름” /></Scripts>

</asp:ScriptManager>

속성 설명

Path 로컬릴리스모드경로(최소화버전)

DebugPath 로컬디버그모드경로

CdnPath CDN 릴리스모드경로(최소화버전)

CdnDebugPath CDN 디버그모드경로

CdnSupportsSecureConnection CDN 경로에대한보안연결사용여부

LoadSuccessExpression 스크립트가정상로드되었는지를평가하는식

string str = "1.10.2";ScriptResourceDefinition definition = new ScriptResourceDefinition {

Path = "~/Scripts/jquery-" + str + ".min.js",DebugPath = "~/Scripts/jquery-" + str + ".js",CdnPath = "http://ajax.aspnetcdn.com/ajax/jQuery/jquery-" + str + ".min.js",CdnDebugPath = "http://ajax.aspnetcdn.com/ajax/jQuery/jquery-" + str + ".js",CdnSupportsSecureConnection = true,LoadSuccessExpression = "window.jQuery"

};ScriptManager.ScriptResourceMapping.AddDefinition("jquery", definition);

<?xml version="1.0" encoding="utf-8" ?><bundles version="1.0">

<styleBundle path=“번들경로“><include path=“CSS 경로” /><include path=“CSS 경로” />

</styleBundle></bundles>

<webopt:BundleReference runat="server" Path="번들경로" />

항목:27, 받음:4.46MB 항목:10, 받음:1.37MB

//Global.asax의 Application_Start에작성RouteConfig.RegisterRoutes(RoutTable.Routes);

//RouteConfig.cs에작성public static void RegisterRoutes(RouteCollection routes){

var settings = new FriendlyUrlSettings();settings.AutoRedirectMode = RedirectMode.Permanent;//301 or 302 지정routes.EnableFriendlyUrls(settings);

}

<a href="<%: FriendlyUrl.Href("~/Foo", "bar", 123) %>">Click me</a>

<% foreach (var segment in Request.GetFriendlyUrlSegments()) { %>

<li><%: segment %></li>

<% } %>

public IQueryable<Category> GetCategories([QueryString]string keyword)

public IQueryable<Category> GetCategories([QueryString("q")]string keyword)

HTTP://localhost/default?keyword=a //a라는값이 keyword 매개변수로입력됨

HTTP://localhost/default?q=a //a라는 값이 keyword 매개변수로입력됨

public IQueryable<Category> GetCategories([Control(“컨트롤이름“)]int? categoryId)

컨트롤의값이 categoryId 매개변수로입력됨

public IQueryable<Category> GetCategories([FriendlyUrlSegments(1)]int? categoryId)

ex)~/modelbinding3/categoryId/3

<add key="ValidationSettings:UnobtrusiveValidationMode" value="WebForms" />

top related