This document summarizes a presentation on ASP.NET MVC. It begins with an agenda that includes an overview of ASP.NET MVC concepts and new features in MVC 3. It then discusses some downsides of classic ASP.NET and defines ASP.NET MVC. Key aspects of MVC like routing, controllers, views and new features in MVC 3 such as the Razor view engine, ViewBag property, new action result types, and unobtrusive JavaScript are summarized. The document concludes with resources for further learning about ASP.NET MVC.
JSF 2.3: Integration with Front-End FrameworksIan Hlavats
This presentation will be shared at JavaOne 2014 during the JSF BOF session. It outlines the new generation of front-end frameworks and technologies and how JSF 2.3 can better support them.
slides contains all about the ASP.NET MVC 5 based contents, and hopefully this will also guide you how to a write the MVC program using .NET Technology
JSF 2.3: Integration with Front-End FrameworksIan Hlavats
This presentation will be shared at JavaOne 2014 during the JSF BOF session. It outlines the new generation of front-end frameworks and technologies and how JSF 2.3 can better support them.
slides contains all about the ASP.NET MVC 5 based contents, and hopefully this will also guide you how to a write the MVC program using .NET Technology
This session will provide a complete tour of using the Spring MVC framework to build Java Portlets. It will include an in-depth review of a sample portlet application developed using the latest features of Spring MVC, including Annotation-based Controllers. If you are writing Portlets and using Spring, this session is for you.
We'll begin by discussing the unique differences and challenges when developing Portlets instead of traditional Servlet webapps. Then we'll talk about the unique approach that Spring MVC takes towards Portlets that fully leverages the Portlet lifecycle, instead of masking it like many other frameworks. We'll take an extensive tour of a sample application so we can see all the unique pieces of the framework in action. Finally we'll conclude with discussion of the upcoming support for the Portlet 2.0 (JSR 286) specification that will be part of Spring 3.0.
Web Application Technologies,What is servlet?
Jobs of servlet
Advantages over CGI
Why pages are build dynamically?
Servlet container
Installation & configuration
- Type 1: Integration of Tomcat server and eclipse
- Type 2: Java Servlet
Servlet Sample Example
Servlet Overview And Architecture
- Servlet Life cycle/Single Thread Model
- Interface Servlet
- HttpServlet Class
- HttpServletRequest, HttpServletResponse
Handling client request :Http request
Generating Server Response : Http status code
Handling Session
- Cookies
- Session Tracking
- URL-re writing
- Hidden Form fields
Introduction to Web Application Technologies
CGI Programs on the Web Server
What is servlet?
Jobs of servlet
Advantages over CGI
Why pages are build dynamically?
Servlet container
Installation & configuration
- Type 1: Integration of Tomcat server and eclipse
- Type 2: Java Servlet
Servlet Sample Example
Servlet Overview And Architecture
- Servlet Life cycle/Single Thread Model
- Interface Servlet
- HttpServlet Class
- HttpServletRequest, HttpServletResponse
Spring MVC 3.0 Framework
Objective:
1. Introduce Spring MVC Module
2. Learn about Spring MVC Components (Dispatcher, Handler mapping, Controller, View Resolver, View)
Slides:
1. What Is Spring?
2. Why use Spring?
3. By the way, just what is MVC?
4. MVC Architecture
5. Spring MVC Architecture
7. Spring MVC Components
8. DispatcherServlet
9. DispatcherServlet Architecture.........
.........................................................
University of Colorado PhD software engineering student Aaron Schram explains the details of creating a web applications using the Spring MVC framework
25+ Reasons to use OmniFaces in JSF applicationsAnghel Leonard
OmniFaces is an utility library that can help you to improve your JSF development experience. This presentation reveals 25+ real cases in which OmniFaces can make JSF life easier.
Java EE 8 Web Frameworks: A Look at JSF vs MVCJosh Juneau
This session provides an overview of both the JSF and MVC 1.0 frameworks. The frameworks are then compared to each other. Finally, JSF 2.3 upcoming features are previewed.
This session will provide a complete tour of using the Spring MVC framework to build Java Portlets. It will include an in-depth review of a sample portlet application developed using the latest features of Spring MVC, including Annotation-based Controllers. If you are writing Portlets and using Spring, this session is for you.
We'll begin by discussing the unique differences and challenges when developing Portlets instead of traditional Servlet webapps. Then we'll talk about the unique approach that Spring MVC takes towards Portlets that fully leverages the Portlet lifecycle, instead of masking it like many other frameworks. We'll take an extensive tour of a sample application so we can see all the unique pieces of the framework in action. Finally we'll conclude with discussion of the upcoming support for the Portlet 2.0 (JSR 286) specification that will be part of Spring 3.0.
Web Application Technologies,What is servlet?
Jobs of servlet
Advantages over CGI
Why pages are build dynamically?
Servlet container
Installation & configuration
- Type 1: Integration of Tomcat server and eclipse
- Type 2: Java Servlet
Servlet Sample Example
Servlet Overview And Architecture
- Servlet Life cycle/Single Thread Model
- Interface Servlet
- HttpServlet Class
- HttpServletRequest, HttpServletResponse
Handling client request :Http request
Generating Server Response : Http status code
Handling Session
- Cookies
- Session Tracking
- URL-re writing
- Hidden Form fields
Introduction to Web Application Technologies
CGI Programs on the Web Server
What is servlet?
Jobs of servlet
Advantages over CGI
Why pages are build dynamically?
Servlet container
Installation & configuration
- Type 1: Integration of Tomcat server and eclipse
- Type 2: Java Servlet
Servlet Sample Example
Servlet Overview And Architecture
- Servlet Life cycle/Single Thread Model
- Interface Servlet
- HttpServlet Class
- HttpServletRequest, HttpServletResponse
Spring MVC 3.0 Framework
Objective:
1. Introduce Spring MVC Module
2. Learn about Spring MVC Components (Dispatcher, Handler mapping, Controller, View Resolver, View)
Slides:
1. What Is Spring?
2. Why use Spring?
3. By the way, just what is MVC?
4. MVC Architecture
5. Spring MVC Architecture
7. Spring MVC Components
8. DispatcherServlet
9. DispatcherServlet Architecture.........
.........................................................
University of Colorado PhD software engineering student Aaron Schram explains the details of creating a web applications using the Spring MVC framework
25+ Reasons to use OmniFaces in JSF applicationsAnghel Leonard
OmniFaces is an utility library that can help you to improve your JSF development experience. This presentation reveals 25+ real cases in which OmniFaces can make JSF life easier.
Java EE 8 Web Frameworks: A Look at JSF vs MVCJosh Juneau
This session provides an overview of both the JSF and MVC 1.0 frameworks. The frameworks are then compared to each other. Finally, JSF 2.3 upcoming features are previewed.
Java Spring MVC Framework with AngularJS by Google and HTML5Tuna Tore
Course Description
#springframework, #spring, #udemy, #discount, #programming, #springmvc, spring, #udemycourse, #education
NEW udemy course related to the latest Java Spring MVC Framework 4 for developing WEB applications with popular and proven technologies such as AngularJS by Google and HTML5. (Lectures are divided in three main sections so you don't have to learn AngularJS Framework until you start the last section. The last section will teach you AngularJS by Google and the integration with Java Spring MVC Framework 4)
https://www.udemy.com/java-spring-mvc-framework-with-angularjs-by-google-and-html5
Moreover, this course is designed and created with the mindset of teaching you the latest web technologies in a short period of time with low training cost and high-quality content including real production quality code examples.
Therefore after attending this course, you will be ready to design and develop any commercial Java Spring MVC applications by learning the main principals, best practices, and most important concepts.
Furthermore, this is a fast track course and covers the most important concepts in AngularJS Framework, HTML5 and the latest Java Spring MVC Framework 4x with code examples and sample applications. You will be able to download source codes/slides/diagrams by attending this course and you can use those samples/codes in your applications as well. Therefore, it will be more than enough for you to develop Java Spring MVC applications if you attend this course.
The benefits of attending this udemy course are listed like as below;
You will earn a higher salary hence you will be able to use the latest and productive technologies and this course will also improve the way of your thinking in terms of programming by teaching you dependency injection principle used in Spring MVC and AngularJS
You will be more confident about commercial WEB programming for the following years and general programming concepts as well.
We will only use FREE Open Source Software tools during the development of components in this course.
You will learn the latest Java Spring MVC Framework with hands-on examples
You will learn the usage of AngularJS by Google for developing structured rich client side applications
You will understand the usage of latest useful basic HTML5 tags with code examples
You will gain experience of using CSS(Style Sheets) in web applications
Learn how to develop, test, run and debug Java Spring MVC applications
Learn how to integrate AngularJS with Java Spring MVC framework.
https://www.udemy.com/java-spring-mvc-framework-with-angularjs-by-google-and-html5
#springframework, #spring, #udemy, #discount, #programming, #springmvc, spring, #udemycourse, #education
This contains about
- what is MVC?
- Why people are preferring MVC Application
- Tools and Softwares needs to create MVC Web application
- Differences between ASP.NET and ASP.NET MVC
- Technologies used to create MVC Application
Marlabs helps companies adopt digital transformation using Digital360 - a comprehensive digital framework comprising of Digital Product Engineering, Digital Automation, Enterprise Analytics, Cloud, Digital Security and Digital User Experience; delivering a next-generation Digital Customer Experience.
Marlabs’ digital life-cycle model delivers rapid innovation using prototyping, co-creation, concept-to-completion and rapid deployment.
Marlabs’ innovation labs, “marlabs .next” incubates cutting-edge technologies like Intent-Intelligence, AI, IoT, IoP, Blockchain and Hyper-Personalization.
Embracing Containers and Microservices for Future Proof Application Moderniza...Marlabs
The need for application modernization: Legacy applications are typically based on a monolithic design, which is organized in a three-tier architecture that covers a front, middle, and end layer. These monolithic designs reduce flexibility and agility due to the way it is compressed and leads to challenges in scaling as per business requirement. This challenge has resulted in modernizing these legacy applications using Containers and Microservices. Credit: Marlabs
The Dark Web consists of World Wide Web content existing on darknets, which are overlay networks that use the Internet, but require specific software, configurations, or authorization to access. The Dark Web forms a small part of the Deep Web - the part of the web not indexed by search engines - although sometimes the term, Deep Web, is mistakenly used to refer specifically to the Dark Web. Credit: Marlabs Inc
Cyber Threat Intelligence is a process in which information from different sources is collected, then analyzed to identify and detect threats against any environment. The information collected could be evidence-based knowledge that could support the context, mechanism, indicators, or implications about an already existing threat against an environment, and/or the knowledge about an upcoming threat that could potentially affect the environment. Credit: Marlabs Inc
AI & Cognitive Computing are some of the most popular business an technical words out there. It is critical to get the basic understanding of Cognitive Computing, which helps us appreciate the technical possibilities and business benefits of the technology.
The Internet of Things : Developing a VisionMarlabs
Bringing together the physical and digital worlds in ways that could barely be imagined a few years ago is what the IoT is doing. Consumer applications of the IoT have the most buzz. But B2B IoT is where organizations see the maximum value. Sensors and actuators are getting connected by networks to computers where data is getting processed—lots of data!
Credit : Marlabs Inc
Mahesh Eswar, Chief Revenue Officer at Marlabs, speaks at NJTC event, 'Breakf...Marlabs
Mahesh Eswar, Chief Revenue Officer at Marlabs, was the speaker at Breakfast Bytes, an NJTC event held at the Marlabs corporate offices in Piscataway, NJ. His presentation was titled: “The Big Data and AI revolution.” In an engaging and insightful discussion, Mahesh talked about the Marlabs framework for stepping up digital transformation, the role of big data and AI, and Marlabs’ AI & Cognitive Computing Platform -- mAdvisor. Using everyday examples, Mahesh brought what can sometimes be fairly abstruse topics into clear, vivid focus. The feedback was overwhelmingly positive, attendees said they learned a lot about these technologies. http://www.marlabs.com/mahesh-eswar-chief-revenue-officer-marlabs-speaks-njtc-event
Marlabs Capabilities Overview: Energy and UtilitiesMarlabs
Our solutions help customers improve reliability, efficiency and return on assets, and better engage customers. We also support our customers with real-time analytics to take control of grid data and implementation of enterprise applications. Marlabs’ solutions enable utilities to modernize their technology assets to support new business models while reducing cost. We can help with Advanced Metering Infrastructure (AMI) and its integration with distribution automation, building newer customer information systems, consumer portals, and meter data management. Marlabs provides end-to-end support throughout the ongoing transformation. We enable seamless integration of newer systems with legacy systems, supported by cyber-security solutions.
Marlabs services cover all personal and commercial lines of insurance. Our insurance rating solutions simplify the rating development cycle by building automated rating and underwriting services from existing models. We help customers integrate policy administration systems and enable straight through processing.
Marlabs Capabilities Overview: Education and Media - Publishing Marlabs
Marlabs services for the education industry include application development, infrastructure management, data analytics, data management, testing, and eLearning. We help media organizations overcome operational challenges, enhance competitiveness, monetize intellectual property, comprehend consumer behavior, and develop new business models with ease.
Marlabs Capabilities Overview: Banking and Finance Marlabs
Marlabs helps customers build robust applications, manage infrastructure, provide real-time analytics, tighten risk management, and improve operational efficiency. With Marlabs as the agile and experienced partner, clients can realize greater returns on their IT investments.
Our airlines solutions and services such as supply chain management, e-commerce testing, passenger handling, inflight catering, airport handling, and cargo handling can be tailored to suit specific needs of network, regional and low cost airlines, and are scalable in scope and performance in tune with business growth.
Marlabs Capabilities: Healthcare and Life SciencesMarlabs
Marlabs can enhance the clinical and administrative systems of customers to deliver more connected and integrated healthcare solutions. Our healthcare solutions help customers meet the demands of a new economic and regulatory paradigm. Marlabs partners with life sciences organizations on advanced technology engagements as well as on strategic sourcing. Our experience in the new digital technologies like Social, Mobile, Analytics and Cloud help us tailor innovative solutions for our clients.
Marlabs’ solutions and services help retailers leverage data to make decisions that can help improve customer experience, operational efficiency and reduce costs. Our customizable solutions—IT and infrastructure, portal development and other Web based solutions, data warehouse enhancement, and automated inventory management—provide operational efficiency, productivity and cost savings.
Marlabs Service Offerings include Application Development & Maintenance, Microsoft service offerings, Java development platform, Enterprise Application Services, Enterprise Transformation, Legacy Migration and SOA Capabilities, DW, Business Intelligence & Analytics, Enterprise Social Network Services, mobile, UI/UX – Usability Engineering, Digital Asset Management (DAM), SAP Solutions/Services, Salesforce.com, Testing Services, Infrastructure Services, and Cyber Threat Management Service
Marlabs Capability Overview: Web Development, Usability Engineering ServicesMarlabs
Our web development capabilities include Dynamic Languages Practice, Rich Internet Applications, LAMP (Perl/ PHP/ Python) Development Services, PHP Development Services, Drupal Development Services, WordPress End-to-End Services, Responsive Web Designing (RWD)
Marlabs’ independent testing services can help customers improve the quality and performance of their software applications along with faster time to market and reduced cost of testing. Our end-to-end outcome-based testing process is aligned with the client’s strategic and operational goals to provide maximum value. We offer a wide range of testing services including life cycle testing, test consulting, test automation services and specialized mobile and enterprise application testing services.
Marlabs Capabilities Overview: India Professional ServicesMarlabs
Marlabs offers multiple models of engagement per the need of our customers. The models that we offer include Staff Augmentation, Project Staffing, Fixed Price, Hybrid, and Dedicated Development Center.
Marlabs Infrastructure Services practice partners with enterprises enabling them to maximize their IT investments and focus their activities on initiatives that drive business innovation. Leveraging our enterprise class data centers, deep technical capabilities, comprehensive tool sets, operational best practices, and security standards we manage the day to day operations of running our clients IT environment at peak performance without compromising the confidentiality, availability and integrity of data entrusted by them. Our ‘OneConsole’ is a unified service and operations management platform providing a single pane of glass for enterprises to provision, monitor, secure, and govern IT services on premise, Cloud, or both.
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Generating a custom Ruby SDK for your web service or Rails API using Smithyg2nightmarescribd
Have you ever wanted a Ruby client API to communicate with your web service? Smithy is a protocol-agnostic language for defining services and SDKs. Smithy Ruby is an implementation of Smithy that generates a Ruby SDK using a Smithy model. In this talk, we will explore Smithy and Smithy Ruby to learn how to generate custom feature-rich SDKs that can communicate with any web service, such as a Rails JSON API.
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
Knowledge engineering: from people to machines and back
Marlabs - ASP.NET Concepts
1. INDIA │ 9-11 February 2011
virtual techdays
SESSION TITLE
Kamala Rajan S │ Technical Manager, Marlabs
2. INDIA │ 9-11 February 2011
virtual techdays
SESSION AGENDA
A Brief Overview of ASP.MVC Concepts
Introduction
Routing, Controllers & Views
A walkthrough of new features in ASP.NET MVC 3
View Engines (Razor)
Unobtrusive Ajax and Unobtrusive Client Side Validation
Dependency resolver
3. INDIA │ 9-11 February 2011
virtual techdays
ASP.NET MVC
Classic ASP.Net - Main Features
High level abstraction over HTML / HTTP
Simplified state management
ViewState and the post‐back model
Control model
Data binding
Simple event‐driven mechanism
Simple Page Controller pattern
And lots more as well...
4. INDIA │ 9-11 February 2011
virtual techdays
ASP.NET MVC
Classic ASP.Net – Some down sides
Sub‐optimal URLs
blog.aspx?date=21032008
Form runat="server"
ViewState
Hard to test
All sorts of code in the page
Requirement to test with an HttpContext
5. INDIA │ 9-11 February 2011
virtual techdays
ASP.NET MVC
ASP.NET MVC defined
A new project‐type for VS 2010
A new routing mechanism
Applicable not just to ASP.NET MVC
Easier to write using TDD
Clean separation of concerns
NOT a replacement for existing Web Forms
Feel free to completely ignore ASP.NET MVC
6. INDIA │ 9-11 February 2011
virtual techdays
ASP.NET MVC
ASP.NET MVC defined
7. INDIA │ 9-11 February 2011
virtual techdays
ASP.NET MVC
ASP.NET MVC defined
-Browser requests /Products/
-Route is determined
-Controller is activated
-Method on Controller is invoked
-Controller processes request
-Renders View, passing in
custom ViewData
-URLs are rendered, pointing to other
Controllers
8. INDIA │ 9-11 February 2011
virtual techdays
ASP.NET MVC
Routing
Routing provides "clean" URLs
URL is mapped to a route handler
Extra level of indirection
Handlers can be changed without impacting URL
URL can be changed without impacting handler
Enables support for multilingual URLs
URL Example : http://www.mysite.com/Home/ProductList
9. INDIA │ 9-11 February 2011
virtual techdays
ASP.NET MVC
Routing
Developers adds Routes to a global RouteTable
Mapping creates a RouteData - a bag of key/values
public static void RegisterRoutes(RouteCollection routes) {
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute( "Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = "" } // Parameter defaults
);
}
protected void Application_Start() {
RegisterRoutes(RouteTable.Routes);
}
10. INDIA │ 9-11 February 2011
virtual techdays
ASP.NET MVC
Controller Handling
Scenarios, Goals and Design
URLs route to controller “actions”, not pages – mark actions in Controller.
Controller executes logic, chooses view.
All public methods are accessible
public void ShowPost(int id) {
Post p = PostRepository.GetPostById(id);
if (p != null) {
RenderView("showpost", p);
} else {
RenderView("nosuchpost", id);
}
}
11. INDIA │ 9-11 February 2011
virtual techdays
ASP.NET MVC
Views
Scenarios, Goals and Design:
– Are for rendering/output.
• Pre-defined and extensible rendering helpers
– Can use .ASPX, .ASCX, .MASTER, etc.
– Can replace with other view technologies:
• Template engines (NVelocity, Brail, …).
• Output formats (images, RSS, JSON, …).
• Mock out for testing.
– Controller sets data on the View
• Loosely typed or strongly typed data
12. INDIA │ 9-11 February 2011
virtual techdays
ASP.NET MVC
New Features in ASP.NET MVC 3
The Razor View Engine
– Razor syntax is clean and concise, requiring a minimum number of keystrokes.
– Razor is easy to learn, in part because it's based on existing languages like C#
and Visual Basic.
– Visual Studio includes IntelliSense and code colorization for Razor syntax.
– Razor views can be unit tested without requiring that you run the application or
launch a web server.
13. INDIA │ 9-11 February 2011
virtual techdays
ASP.NET MVC
New Features in ASP.NET MVC 3
Using traditional asp.net code
Using Razor
14. INDIA │ 9-11 February 2011
virtual techdays
ASP.NET MVC
New Features in ASP.NET MVC 3
New "ViewBag" Property
MVC 2 controllers support a ViewData property that enables you to pass
data to a view template using a late-bound dictionary API.
In MVC 3, you can also use somewhat simpler syntax with
the ViewBag property to accomplish the same purpose.
For example, instead of writing ViewData["Message"]="text", you can
write ViewBag.Message="text".
You do not need to define any strongly-typed classes to use
the ViewBagproperty.
Dynamic property, you can instead just get or set properties and it will
resolve them dynamically at run time.
15. INDIA │ 9-11 February 2011
virtual techdays
ASP.NET MVC
New Features in ASP.NET MVC 3
New "ActionResult" Types
HttpNotFoundResult. Returns a 404 HTTP status code to the client.
RedirectResult. Returns a temporary redirect (HTTP 302 status code) or a permanent
redirect (HTTP 301 status code), depending on a Boolean parameter.
HttpStatusCodeResult. Returns a user-specified HTTP status code.
JavaScript and Ajax Improvements
By default, Ajax and validation helpers in MVC 3 use an unobtrusive JavaScript approach.
Unobtrusive JavaScript avoids injecting inline JavaScript into HTML.
This makes your HTML smaller and less cluttered, and makes it easier to swap out or
customize JavaScript libraries.
16. INDIA │ 9-11 February 2011
virtual techdays
ASP.NET MVC
New Features in ASP.NET MVC 3
Dependency Injection Improvements
ASP.NET MVC 3 provides better support for applying Dependency Injection (DI) and
for integrating with Dependency Injection or Inversion of Control (IOC) containers.
Support for DI has been added in the following areas:
– Controllers (registering and injecting controller factories, injecting controllers).
– Views (registering and injecting view engines, injecting dependencies into view pages).
– Action filters (locating and injecting filters).
– Model binders (registering and injecting).
– Model validation providers (registering and injecting).
– Model metadata providers (registering and injecting).
– Value providers (registering and injecting).
17. INDIA │ 9-11 February 2011
virtual techdays
ASP.NET MVC
New Features in ASP.NET MVC 3
Dependency Injection Improvements
MVC 3 supports the Common Service Locator library and any DI container that
supports that library'sIServiceLocator interface.
It also supports a new IDependencyResolver interface that makes it easier to
integrate DI frameworks.
For more information about DI in MVC 3, see the following resources:
http://bradwilson.typepad.com/blog/2010/07/service-location-pt1-introduction.html
18. INDIA │ 9-11 February 2011
virtual techdays
ASP.NET MVC
New Features in ASP.NET MVC 3
Other New Features
NuGet Integration
Partial-Page Output Caching
Granular Control over Request Validation
Scaffolding Improvements
Sessionless Controller Support
And more..
19. INDIA │ 9-11 February 2011
virtual techdays
RESOURCES
Talk by Scott Hanselmann
http://channel9.msdn.com/posts/matthijs/ASPNET-MVC-2-Basics-Introduction-by-Scott-
Hanselman/
Must watch to learn more about MVC
Scott Guthrie’s Blog
http://weblogs.asp.net/scottgu/archive/2010/07/27/introducing-asp-net-mvc-3-preview-
1.aspx