SlideShare ist ein Scribd-Unternehmen logo
1 von 44
Development in ASP.NETWebForms, LINQ, Dynamic Data TanzimSaqib www.TanzimSaqib.com SaaS Developer  Software as-a Service (SaaS) Platform British Telecom
Session Summary WebForms LINQ Dynamic Data Futures – ASP.NET 4
What is ASP.NET Technology for web application development Provides you with rich APIs and services Robust, scalable, fast development experience Great flexibility, less coding Seamless integration with Microsoft stack tools Not an upgrade from ASP the next generation ASP
WebForms UI elements that make up the Look & Feel of your application Also known as just Page. Code behind brings UI and code separation Default.aspx Default.aspx.cs Advanced features reduce code i.e. Data binding Rich Drag & Drop design experience
WebForms (contd.) Support for multiple languages C#, VB, C++ and so on Similar to Windows Forms programming model Events, Properties, Methods Extensibility Third party assemblies and controls runat=“server” Compiled at server-side Accessible by server code
ASP.NET Controls or Web Controls
Most Commonly Used WebControls
ASP.NET Ecosystem
Page Life Cycle Events Events in green are the most frequently used
Page Life Cycle Events (contd.) For more information: http://bit.ly/aspnetevents
WebForms Feature Highlights Themes and skins Master pages Membership, Profile and Role Manager API Application Services for AJAX applications Website administration Wide range choices for caching Levels: Application, Session, Cache, Cookie, Page, Portion of Page Handling errors
WebForms Feature Highlights (contd.) ViewState Technique to persist changes to state of a WebForm across postbacks Stores in a hidden input field __VIEWSTATE Encrypted Increase length of the page, hence slows down You can turn on/off
Cozying up with ASP.NET Development demo  Building a complete data driven site
Groundbreaking innovation LINQ Language INtegrated Query
Language INtegrated Query - LINQ Pronouced as “Link” A language construct Strongly typed query against objects Full intellisense support	 Can be used with any collection of objects that implements IEnumerable<T> Highly extensible LINQ to XML LINQ to SQL LINQ to Flickr! etc.
LINQ Benefits Simply put - avoiding having to learn and master many different domain languages, development or debugging environments in order to retrieve and manipulate data from different sources One language to query all. Deferred Execution Process queries only when foreach/ToList() is being called. Parallel Extensions help LINQ queries run in multiple processor cores in ASP.NET 4
Querying objects demo
Obtaining data source Query Expression Syntax: varallProducts = from p in products select p; Extension Method: No representation. productsis the collection of objects
Filtering Query Expression Syntax: varlowOnProducts = from p in products  		where p.UnitsInStock < 10 select p; Extension Method: products.Where(p => p.UnitsInStock < 10);
Ordering Query Expression Syntax: varlowOnProducts = from p in products  		where p.UnitsInStock < 10  orderbyp.Name ascending  		select p; Extension Method: products.Where(p => p.UnitsInStock < 10) 		.OrderBy(p => p.Name);
Ordering (contd.) Other helpful Extension Methods: OrderBy OrderByDescending ThenBy ThenByDescending  
Grouping string[] partNumbers = new string[] { "SCW10", "SCW1", "SCW2", "SCW11", "NUT10", "NUT1", "NUT2"}; Query Expression Syntax:  var query = from pN in partNumbers 			group pN by pN.Substring(0,3);  Extension Method: var query = partNumbers 			.GroupBy(pN => pN.Substring(0,3)); foreach (var group in q) { Console.WriteLine("Group key: {0}", group.Key); foreach (var part in group) { Console.WriteLine(" - {0}", part);     } } varlowOnProducts = from p in products  		where p.UnitsInStock < 10  orderbyp.Name ascending  		select p; products.Where(p => p.UnitsInStock < 10) 		.OrderBy(p => p.Name);
Grouping (contd.) Iterating through grouped data: foreach (var group in query) { Console.WriteLine("Group key: {0}", group.Key); foreach (var part in group) { Console.WriteLine(" - {0}", part);     } }
Standard Query Operators
Standard Query Operators (contd.)
Querying and modifying data demo  LINQ DataContext
LINQ Query Provider Roll your own provider: YouTubeContextcontext = new YouTubeContext(); var query = (from v in context.Videos 	where v.Location == " Moghbazar " && 	v.SearchText == “Rail Crash" select v).IfNotViewedBy(“TanzimSaqib”); Building LINQ Provider series: http://bit.ly/LINQSeries
Life easier with Dynamic Data
Dynamic Data Overview Build powerful data driven sites in a minute! Automatic creation of  WebForms Controls and data binding Validation logic in place Metadata inferred from schema Easy and highly customizable Time saver and reusable
Building a website in less than a minute! demo
Field Templates Fields are User Controls Dynamically chosen by datatype Responsible for Data binding Validation and Rendering Reusable
Customizing Fields demo
Customizing Pages Page Templates Changes affect all pages Custom pages for individual tables Custom columns and rendering
Customizing Pages demo
Routing Standard URL: http://yourcompany.com/Products/Edit.aspx Extensionless clean URL: http://yourcompany.com/Products/Edit No necessity to move files around Routing engine is being used by Dynamic Data ASP.NET MVC Attend the next session for deep dive into Routing and ASP.NET MVC
Routing demo
Future is now ASP.NET 4 Beta 1
Futures - ASP.NET 4 Support for meta tags Page.Keywords, Page.Description Enabling ViewState for individual controls ViewStateMode property of the control Reading route values at Page level: Page.RouteData.Values[“param_name_here"] Reading route values from markup: <%$ RouteValue:param_name_here %> More precise and predictable ClientIDs
Futures - ASP.NET 4 (contd.) QueryExtender New server control Works with LinqDataSource and EntityDataSource More control over what is coming from Database Controls for nested use with QueryExtender SearchExpression RangeExpression PropertyExpression CustomExpression
Futures - ASP.NET 4 (contd.) Web.config transformation: Development settings: web.debug.config Production settings: web.release.config Dynamic Data New field template for URL, Email addresses Client Template and Live data binding Enables binding data source to HTML elements Implemented with Observer pattern Data changes from/to UI to/from Database notified
Futures - ASP.NET 4 (contd.) Example <script type="text/javascript">     vardataContext = new Sys.Data.DataContext(); dataContext.set_serviceUri("emplyeeService.svc"); dataContext.initialize();    </script>   <ul sys:attach="dataview" class="sys-template "       dataview:autofetch="true"       dataview:dataprovider="{{ dataContext }}"       dataview:fetchoperation="GetEmployeeList">       <li>             <h3>{binding Name}</h3>           <div>{binding Address}</div>       </li>   </ul>  
Futures - ASP.NET 4 (contd.) Many more. For more information: http://bit.ly/aspnet4
Links and downloads: http://www.TanzimSaqib.com Q & A
Thank you

Weitere ähnliche Inhalte

Was ist angesagt?

DevNext - Web Programming Concepts Using Asp Net
DevNext - Web Programming Concepts Using Asp NetDevNext - Web Programming Concepts Using Asp Net
DevNext - Web Programming Concepts Using Asp NetAdil Mughal
 
Chris O'Brien - Modern SharePoint sites and the SharePoint Framework - reference
Chris O'Brien - Modern SharePoint sites and the SharePoint Framework - referenceChris O'Brien - Modern SharePoint sites and the SharePoint Framework - reference
Chris O'Brien - Modern SharePoint sites and the SharePoint Framework - referenceChris O'Brien
 
Web II - 01 - Introduction to server-side development
Web II - 01 - Introduction to server-side developmentWeb II - 01 - Introduction to server-side development
Web II - 01 - Introduction to server-side developmentRandy Connolly
 
Unity Connect Haarlem 2016 - The Lay of the Land of Client-Side Development c...
Unity Connect Haarlem 2016 - The Lay of the Land of Client-Side Development c...Unity Connect Haarlem 2016 - The Lay of the Land of Client-Side Development c...
Unity Connect Haarlem 2016 - The Lay of the Land of Client-Side Development c...Marc D Anderson
 
Silverlight
SilverlightSilverlight
SilverlightBiTWiSE
 
REPORT ON ASP.NET
REPORT ON ASP.NETREPORT ON ASP.NET
REPORT ON ASP.NETLOKESH
 
MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0
MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0
MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0Thomas Conté
 
Concepts of Asp.Net
Concepts of Asp.NetConcepts of Asp.Net
Concepts of Asp.Netvidyamittal
 
AN INTRODUCTION TO APACHE FLEX
AN INTRODUCTION TO APACHE FLEXAN INTRODUCTION TO APACHE FLEX
AN INTRODUCTION TO APACHE FLEXJoseph Labrecque
 
PLASTIC 2011: "Enterprise JavaScript with Jangaroo"
PLASTIC 2011: "Enterprise JavaScript with Jangaroo"PLASTIC 2011: "Enterprise JavaScript with Jangaroo"
PLASTIC 2011: "Enterprise JavaScript with Jangaroo"Frank Wienberg
 
Re-use Your Skills and Code to Expand the Reach of Your Apps with Silverlight
Re-use Your Skills and Code to Expand the Reach of Your Apps with SilverlightRe-use Your Skills and Code to Expand the Reach of Your Apps with Silverlight
Re-use Your Skills and Code to Expand the Reach of Your Apps with SilverlightFrank La Vigne
 
Building Desktop RIAs with PHP, HTML & Javascript in AIR
Building Desktop RIAs with PHP, HTML & Javascript in AIRBuilding Desktop RIAs with PHP, HTML & Javascript in AIR
Building Desktop RIAs with PHP, HTML & Javascript in AIRfunkatron
 
What’s new in Visual Studio 2010
What’s new in Visual Studio 2010What’s new in Visual Studio 2010
What’s new in Visual Studio 2010Sandun Perera
 
Building productivity solutions with Microsoft Graph
Building productivity solutions with Microsoft GraphBuilding productivity solutions with Microsoft Graph
Building productivity solutions with Microsoft GraphWaldek Mastykarz
 
Flex Remoting With WebORB v1.0
Flex Remoting With WebORB v1.0Flex Remoting With WebORB v1.0
Flex Remoting With WebORB v1.0guest642dd3
 
Chapter1 introduction to asp.net
Chapter1  introduction to asp.netChapter1  introduction to asp.net
Chapter1 introduction to asp.netmentorrbuddy
 
Net framework
Net frameworkNet framework
Net frameworksumit1503
 

Was ist angesagt? (20)

DevNext - Web Programming Concepts Using Asp Net
DevNext - Web Programming Concepts Using Asp NetDevNext - Web Programming Concepts Using Asp Net
DevNext - Web Programming Concepts Using Asp Net
 
Chris O'Brien - Modern SharePoint sites and the SharePoint Framework - reference
Chris O'Brien - Modern SharePoint sites and the SharePoint Framework - referenceChris O'Brien - Modern SharePoint sites and the SharePoint Framework - reference
Chris O'Brien - Modern SharePoint sites and the SharePoint Framework - reference
 
Asp.net
Asp.netAsp.net
Asp.net
 
Web II - 01 - Introduction to server-side development
Web II - 01 - Introduction to server-side developmentWeb II - 01 - Introduction to server-side development
Web II - 01 - Introduction to server-side development
 
Unity Connect Haarlem 2016 - The Lay of the Land of Client-Side Development c...
Unity Connect Haarlem 2016 - The Lay of the Land of Client-Side Development c...Unity Connect Haarlem 2016 - The Lay of the Land of Client-Side Development c...
Unity Connect Haarlem 2016 - The Lay of the Land of Client-Side Development c...
 
Silverlight
SilverlightSilverlight
Silverlight
 
REPORT ON ASP.NET
REPORT ON ASP.NETREPORT ON ASP.NET
REPORT ON ASP.NET
 
MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0
MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0
MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0
 
Concepts of Asp.Net
Concepts of Asp.NetConcepts of Asp.Net
Concepts of Asp.Net
 
AN INTRODUCTION TO APACHE FLEX
AN INTRODUCTION TO APACHE FLEXAN INTRODUCTION TO APACHE FLEX
AN INTRODUCTION TO APACHE FLEX
 
Chapter 1
Chapter 1Chapter 1
Chapter 1
 
PLASTIC 2011: "Enterprise JavaScript with Jangaroo"
PLASTIC 2011: "Enterprise JavaScript with Jangaroo"PLASTIC 2011: "Enterprise JavaScript with Jangaroo"
PLASTIC 2011: "Enterprise JavaScript with Jangaroo"
 
Re-use Your Skills and Code to Expand the Reach of Your Apps with Silverlight
Re-use Your Skills and Code to Expand the Reach of Your Apps with SilverlightRe-use Your Skills and Code to Expand the Reach of Your Apps with Silverlight
Re-use Your Skills and Code to Expand the Reach of Your Apps with Silverlight
 
Building Desktop RIAs with PHP, HTML & Javascript in AIR
Building Desktop RIAs with PHP, HTML & Javascript in AIRBuilding Desktop RIAs with PHP, HTML & Javascript in AIR
Building Desktop RIAs with PHP, HTML & Javascript in AIR
 
What’s new in Visual Studio 2010
What’s new in Visual Studio 2010What’s new in Visual Studio 2010
What’s new in Visual Studio 2010
 
Building productivity solutions with Microsoft Graph
Building productivity solutions with Microsoft GraphBuilding productivity solutions with Microsoft Graph
Building productivity solutions with Microsoft Graph
 
Flex Remoting With WebORB v1.0
Flex Remoting With WebORB v1.0Flex Remoting With WebORB v1.0
Flex Remoting With WebORB v1.0
 
Chapter1 introduction to asp.net
Chapter1  introduction to asp.netChapter1  introduction to asp.net
Chapter1 introduction to asp.net
 
Net framework
Net frameworkNet framework
Net framework
 
asp
aspasp
asp
 

Ähnlich wie Development In ASP.NET by Tanzim Saqib

MSDN Unleashed: WPF Demystified
MSDN Unleashed: WPF DemystifiedMSDN Unleashed: WPF Demystified
MSDN Unleashed: WPF DemystifiedDave Bost
 
Mike Taulty MIX10 Silverlight Frameworks and Patterns
Mike Taulty MIX10 Silverlight Frameworks and PatternsMike Taulty MIX10 Silverlight Frameworks and Patterns
Mike Taulty MIX10 Silverlight Frameworks and Patternsukdpe
 
Web development concepts using microsoft technologies
Web development concepts using microsoft technologiesWeb development concepts using microsoft technologies
Web development concepts using microsoft technologiesHosam Kamel
 
Workshop HTML5+PhoneGap by Ivano Malavolta
Workshop HTML5+PhoneGap by Ivano Malavolta Workshop HTML5+PhoneGap by Ivano Malavolta
Workshop HTML5+PhoneGap by Ivano Malavolta Commit University
 
Benefits of the CodeIgniter Framework
Benefits of the CodeIgniter FrameworkBenefits of the CodeIgniter Framework
Benefits of the CodeIgniter FrameworkToby Beresford
 
Asp.net architecture
Asp.net architectureAsp.net architecture
Asp.net architectureIblesoft
 
Daniel Egan Msdn Tech Days Oc Day2
Daniel Egan Msdn Tech Days Oc Day2Daniel Egan Msdn Tech Days Oc Day2
Daniel Egan Msdn Tech Days Oc Day2Daniel Egan
 
ASPNET for PHP Developers
ASPNET for PHP DevelopersASPNET for PHP Developers
ASPNET for PHP DevelopersWes Yanaga
 
Intro to VS 2010 & .Net 4.0
Intro to VS 2010 & .Net 4.0Intro to VS 2010 & .Net 4.0
Intro to VS 2010 & .Net 4.0Clint Edmonson
 
Usability AJAX and other ASP.NET Features
Usability AJAX and other ASP.NET FeaturesUsability AJAX and other ASP.NET Features
Usability AJAX and other ASP.NET FeaturesPeter Gfader
 
ASP.NET Presentation
ASP.NET PresentationASP.NET Presentation
ASP.NET PresentationRasel Khan
 
MSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for Developers
MSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for DevelopersMSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for Developers
MSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for DevelopersDave Bost
 
WinRT and the Web: Keeping Windows Store Apps Alive and Connected
WinRT and the Web: Keeping Windows Store Apps Alive and ConnectedWinRT and the Web: Keeping Windows Store Apps Alive and Connected
WinRT and the Web: Keeping Windows Store Apps Alive and ConnectedJeremy Likness
 

Ähnlich wie Development In ASP.NET by Tanzim Saqib (20)

ASP.NET OVERVIEW
ASP.NET OVERVIEWASP.NET OVERVIEW
ASP.NET OVERVIEW
 
MSDN Unleashed: WPF Demystified
MSDN Unleashed: WPF DemystifiedMSDN Unleashed: WPF Demystified
MSDN Unleashed: WPF Demystified
 
Mike Taulty MIX10 Silverlight Frameworks and Patterns
Mike Taulty MIX10 Silverlight Frameworks and PatternsMike Taulty MIX10 Silverlight Frameworks and Patterns
Mike Taulty MIX10 Silverlight Frameworks and Patterns
 
Web development concepts using microsoft technologies
Web development concepts using microsoft technologiesWeb development concepts using microsoft technologies
Web development concepts using microsoft technologies
 
Walther Aspnet4
Walther Aspnet4Walther Aspnet4
Walther Aspnet4
 
Asp dot net long
Asp dot net longAsp dot net long
Asp dot net long
 
Architecting RIAs
Architecting RIAsArchitecting RIAs
Architecting RIAs
 
Workshop HTML5+PhoneGap by Ivano Malavolta
Workshop HTML5+PhoneGap by Ivano Malavolta Workshop HTML5+PhoneGap by Ivano Malavolta
Workshop HTML5+PhoneGap by Ivano Malavolta
 
Benefits of the CodeIgniter Framework
Benefits of the CodeIgniter FrameworkBenefits of the CodeIgniter Framework
Benefits of the CodeIgniter Framework
 
Asp.net architecture
Asp.net architectureAsp.net architecture
Asp.net architecture
 
Daniel Egan Msdn Tech Days Oc Day2
Daniel Egan Msdn Tech Days Oc Day2Daniel Egan Msdn Tech Days Oc Day2
Daniel Egan Msdn Tech Days Oc Day2
 
ASPNET for PHP Developers
ASPNET for PHP DevelopersASPNET for PHP Developers
ASPNET for PHP Developers
 
Intro to VS 2010 & .Net 4.0
Intro to VS 2010 & .Net 4.0Intro to VS 2010 & .Net 4.0
Intro to VS 2010 & .Net 4.0
 
Walther Ajax4
Walther Ajax4Walther Ajax4
Walther Ajax4
 
Usability AJAX and other ASP.NET Features
Usability AJAX and other ASP.NET FeaturesUsability AJAX and other ASP.NET Features
Usability AJAX and other ASP.NET Features
 
ASP
ASPASP
ASP
 
ASP.NET Presentation
ASP.NET PresentationASP.NET Presentation
ASP.NET Presentation
 
Asp dot net final (2)
Asp dot net   final (2)Asp dot net   final (2)
Asp dot net final (2)
 
MSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for Developers
MSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for DevelopersMSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for Developers
MSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for Developers
 
WinRT and the Web: Keeping Windows Store Apps Alive and Connected
WinRT and the Web: Keeping Windows Store Apps Alive and ConnectedWinRT and the Web: Keeping Windows Store Apps Alive and Connected
WinRT and the Web: Keeping Windows Store Apps Alive and Connected
 

Kürzlich hochgeladen

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 

Kürzlich hochgeladen (20)

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 

Development In ASP.NET by Tanzim Saqib

  • 1. Development in ASP.NETWebForms, LINQ, Dynamic Data TanzimSaqib www.TanzimSaqib.com SaaS Developer Software as-a Service (SaaS) Platform British Telecom
  • 2. Session Summary WebForms LINQ Dynamic Data Futures – ASP.NET 4
  • 3. What is ASP.NET Technology for web application development Provides you with rich APIs and services Robust, scalable, fast development experience Great flexibility, less coding Seamless integration with Microsoft stack tools Not an upgrade from ASP the next generation ASP
  • 4. WebForms UI elements that make up the Look & Feel of your application Also known as just Page. Code behind brings UI and code separation Default.aspx Default.aspx.cs Advanced features reduce code i.e. Data binding Rich Drag & Drop design experience
  • 5. WebForms (contd.) Support for multiple languages C#, VB, C++ and so on Similar to Windows Forms programming model Events, Properties, Methods Extensibility Third party assemblies and controls runat=“server” Compiled at server-side Accessible by server code
  • 6. ASP.NET Controls or Web Controls
  • 7. Most Commonly Used WebControls
  • 9. Page Life Cycle Events Events in green are the most frequently used
  • 10. Page Life Cycle Events (contd.) For more information: http://bit.ly/aspnetevents
  • 11. WebForms Feature Highlights Themes and skins Master pages Membership, Profile and Role Manager API Application Services for AJAX applications Website administration Wide range choices for caching Levels: Application, Session, Cache, Cookie, Page, Portion of Page Handling errors
  • 12. WebForms Feature Highlights (contd.) ViewState Technique to persist changes to state of a WebForm across postbacks Stores in a hidden input field __VIEWSTATE Encrypted Increase length of the page, hence slows down You can turn on/off
  • 13. Cozying up with ASP.NET Development demo Building a complete data driven site
  • 14. Groundbreaking innovation LINQ Language INtegrated Query
  • 15. Language INtegrated Query - LINQ Pronouced as “Link” A language construct Strongly typed query against objects Full intellisense support Can be used with any collection of objects that implements IEnumerable<T> Highly extensible LINQ to XML LINQ to SQL LINQ to Flickr! etc.
  • 16. LINQ Benefits Simply put - avoiding having to learn and master many different domain languages, development or debugging environments in order to retrieve and manipulate data from different sources One language to query all. Deferred Execution Process queries only when foreach/ToList() is being called. Parallel Extensions help LINQ queries run in multiple processor cores in ASP.NET 4
  • 18. Obtaining data source Query Expression Syntax: varallProducts = from p in products select p; Extension Method: No representation. productsis the collection of objects
  • 19. Filtering Query Expression Syntax: varlowOnProducts = from p in products where p.UnitsInStock < 10 select p; Extension Method: products.Where(p => p.UnitsInStock < 10);
  • 20. Ordering Query Expression Syntax: varlowOnProducts = from p in products where p.UnitsInStock < 10 orderbyp.Name ascending select p; Extension Method: products.Where(p => p.UnitsInStock < 10) .OrderBy(p => p.Name);
  • 21. Ordering (contd.) Other helpful Extension Methods: OrderBy OrderByDescending ThenBy ThenByDescending  
  • 22. Grouping string[] partNumbers = new string[] { "SCW10", "SCW1", "SCW2", "SCW11", "NUT10", "NUT1", "NUT2"}; Query Expression Syntax:  var query = from pN in partNumbers group pN by pN.Substring(0,3);  Extension Method: var query = partNumbers .GroupBy(pN => pN.Substring(0,3)); foreach (var group in q) { Console.WriteLine("Group key: {0}", group.Key); foreach (var part in group) { Console.WriteLine(" - {0}", part); } } varlowOnProducts = from p in products where p.UnitsInStock < 10 orderbyp.Name ascending select p; products.Where(p => p.UnitsInStock < 10) .OrderBy(p => p.Name);
  • 23. Grouping (contd.) Iterating through grouped data: foreach (var group in query) { Console.WriteLine("Group key: {0}", group.Key); foreach (var part in group) { Console.WriteLine(" - {0}", part); } }
  • 26. Querying and modifying data demo LINQ DataContext
  • 27. LINQ Query Provider Roll your own provider: YouTubeContextcontext = new YouTubeContext(); var query = (from v in context.Videos where v.Location == " Moghbazar " && v.SearchText == “Rail Crash" select v).IfNotViewedBy(“TanzimSaqib”); Building LINQ Provider series: http://bit.ly/LINQSeries
  • 28. Life easier with Dynamic Data
  • 29. Dynamic Data Overview Build powerful data driven sites in a minute! Automatic creation of WebForms Controls and data binding Validation logic in place Metadata inferred from schema Easy and highly customizable Time saver and reusable
  • 30. Building a website in less than a minute! demo
  • 31. Field Templates Fields are User Controls Dynamically chosen by datatype Responsible for Data binding Validation and Rendering Reusable
  • 33. Customizing Pages Page Templates Changes affect all pages Custom pages for individual tables Custom columns and rendering
  • 35. Routing Standard URL: http://yourcompany.com/Products/Edit.aspx Extensionless clean URL: http://yourcompany.com/Products/Edit No necessity to move files around Routing engine is being used by Dynamic Data ASP.NET MVC Attend the next session for deep dive into Routing and ASP.NET MVC
  • 37. Future is now ASP.NET 4 Beta 1
  • 38. Futures - ASP.NET 4 Support for meta tags Page.Keywords, Page.Description Enabling ViewState for individual controls ViewStateMode property of the control Reading route values at Page level: Page.RouteData.Values[“param_name_here"] Reading route values from markup: <%$ RouteValue:param_name_here %> More precise and predictable ClientIDs
  • 39. Futures - ASP.NET 4 (contd.) QueryExtender New server control Works with LinqDataSource and EntityDataSource More control over what is coming from Database Controls for nested use with QueryExtender SearchExpression RangeExpression PropertyExpression CustomExpression
  • 40. Futures - ASP.NET 4 (contd.) Web.config transformation: Development settings: web.debug.config Production settings: web.release.config Dynamic Data New field template for URL, Email addresses Client Template and Live data binding Enables binding data source to HTML elements Implemented with Observer pattern Data changes from/to UI to/from Database notified
  • 41. Futures - ASP.NET 4 (contd.) Example <script type="text/javascript">     vardataContext = new Sys.Data.DataContext(); dataContext.set_serviceUri("emplyeeService.svc"); dataContext.initialize();    </script>   <ul sys:attach="dataview" class="sys-template "       dataview:autofetch="true"       dataview:dataprovider="{{ dataContext }}"       dataview:fetchoperation="GetEmployeeList">       <li>             <h3>{binding Name}</h3>           <div>{binding Address}</div>       </li>   </ul>  
  • 42. Futures - ASP.NET 4 (contd.) Many more. For more information: http://bit.ly/aspnet4
  • 43. Links and downloads: http://www.TanzimSaqib.com Q & A