Online Tutorial Application
Download
Report
Transcript Online Tutorial Application
Online Tutorial
Application
(Project on REST-ful WCF)
Prem Vemosh Kumar K S
DO Final Project – CSE 775
Agenda
Create a web application that can serve as a tutorial application.
Service operations to create, manage and delete the user profile information.
Documents and other content will available to the user based on their
subscription.
Service operations to add and download the tutorials into the system.
Usage of content management system to handle the documents uploaded.
Technologies Used
RESTful WCF (Windows Communication Foundation) will be used to create the
services and its operations.
C# and ASP. NET will be used to create the online web application that will
serve as the client to the services.
MS SQL Server will be used as the database management system that stores
and handles the user information.
MS SharePoint will be used to maintain the content uploaded through the
application which can be documents, images or other approved content
formats.
Representational State Transfer (REST)
Representational State Transfer (REST) is a software architecture style
consisting of guidelines and best practices for creating scalable web services.
Some Features and Constraints;
•
Resources Based - Everything is a resource and it is identified through URI.
•
Representations - How resources are manipulated. Typically XML or JSON is used.
•
Methods - Operations are done on these resources through HTTP Methods like Post,
Get, etc.
•
Uniform Interface - Defines the interface between client and server.
•
Uniform Interface = Resource’s URI + Methods + Representation.
•
Stateless - Each message will be self descriptive and independent.
Windows Communication
Foundation(WCF)
It was first introduced with .NET Framework 3.0.
WCF is a Microsoft platform for building interoperable and distributed
applications.
Summary all of the different distributed programming infrastructures offered
by Microsoft.
Java Web application - (HTTP protocol/XML Format) – End Point 1 - WCF
Windows application - (TCP Protocol/ Binary Format) - End Point 2 - WCF
Another major difference is that Web Services Use XmlSerializer. But WCF
Uses DataContractSerializer which is better in Performance as compared to
XmlSerializer.
Continued…
Service Interface Definition:
namespace ServiceExample
{
[ServiceContract]
Public Interface IWcfExample
{
[OperationContract]
ReturnValue ServiceOperationOne(param1, param2);
[OperationContract]
ReturnValue ServiceOperationTwo(param1, param2);
}
}
A class should use the interface and define the operations needed. End point configurations has
to be done in the configuration file.
Simple Service Call:
using (HTTPResponseObject Obj = new HTTPClient().Post("Service Operation URI Entered Here",
HttpContentExtentions.CreateDataContract(RequestEntity)))
{
if(Obj.StatusCode.Equals(System.Net.HttpStatusCode.OK))
{
ResponseEntity = Obj.Content.ReadAsDataContract<Response>();
}
}
Implementation Plan
Services for Registration, Login, Edit and Delete profiles will be created.
These services will help in managing the user profile information and their
subscription for tutorials.
Only the content under the topics which the user have subscribed for, will be
available for download or view.
Services for uploading and downloading the content from the content
management system will be created. MS SharePoint will be managed through
these services for accessing the content through the application.
Implemented services will be hosted in ISS.
Microsoft SharePoint
SharePoint is a web application framework and platform developed by
Microsoft.
SharePoint offers a set of tools that can be used to provide intranet portals,
document and file management, collaboration, workflow capabilities and
social networks.
One of its features called Enterprise Content and Document Management will
be used in this project.
A content library will be created to manage the contents uploaded through
the application.
Either the concept of Content types or tags will be used to categories the
content available based on the topics defined in the application.
Microsoft ASP .NET and SQL Server
ASP.NET is a development framework for building web pages and web sites
with HTML, CSS, JavaScript and server scripting.
ASP.NET supports three different development models:
Web Pages, MVC (Model View Controller), and Web Forms:
I will be using Web Forms model to develop my application.
Microsoft SQL Server is a relational database management system developed
by Microsoft. As a database, it is a software product whose primary function is
to store and retrieve data as requested by other software applications,
running in the same or different machine across the network.
References
Essential Windows Communication Foundation (WCF): For .NET Framework 3.5
by Steve Resnick, Richard Crane and Chris Bowen
http://www.codeproject.com/Articles/400697/WCF-Service-Creation-WithCsharp
http://en.wikipedia.org/wiki/SharePoint
http://www.restapitutorial.com/lessons/whatisrest.html
http://en.wikipedia.org/wiki/Microsoft_SQL_Server
Thank You