19 January 2014

Handling Session in Common Class in ASP.NET WebForms or ASP.NET MVC

Handling Session in Common Class in ASP.NET WebForms or  ASP.NET MVC

SessionVariables.cs
using System;
using System.Web;
namespace WebApplication1
{
    public class SessionVariables
    {

        ///
        ///  Store EmpID in Session
        ///
        public static Int64 EmpID
        {
            get
            {
                return (Int64)HttpContext.Current.Session["EmpID"];
            }

            set
            {
                HttpContext.Current.Session["EmpID"] = value;
            }
        }
       
       
        ///
        /// Store EmpName in Session
        ///
        public static string EmpName
        {
            get
            {
                return (string)HttpContext.Current.Session["EmpName"];
            }

            set
            {
                HttpContext.Current.Session["EmpName"] = value;
            }
        }
     
    }

}

You can get or set the session variables in Webforms or MVC

using System;
using System.Web.UI;

namespace WebApplication1
{
    public partial class HandlingSession : Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            SessionVariables.EmpID = 1;

            SessionVariables.EmpName = "ArunPrakash";
        }
    }
}

Advantages:
1. Reduces duplicate Session variables declaration
2. Type conversion is in common functions.

ActionResult in MVC 4

ActionResult in MVC 4

The ActionResult class is the base class for action results.

An action method responds to user input by performing work and returning an action result. An action result represents a command that the framework will perform on behalf of the action method.

The following types derive from ActionResult:

ContentResult - Represents a user-defined content type that is the result of an action method.

EmptyResult - Represents a result that does nothing, such as a controller action method that returns nothing.

FileResult - Represents a base class that is used to send binary file content to the response.

HttpUnauthorizedResult - Represents the result of an unauthorized HTTP request.

JavaScriptResult - Sends JavaScript content to the response.

JsonResult - Represents a class that is used to send JSON-formatted content to the response.

RedirectResult - Controls the processing of application actions by redirecting to a specified URI.

RedirectToRouteResult - Represents a result that performs a redirection by using the specified route values dictionary.

ViewResultBase - The ViewResultBase class is the abstract base class for both the ViewResult and PartialViewResult classes. The class contains methods for finding the view to be rendered and for executing the result. This class also contains properties that identify the view to be rendered, the name of the view, view data, temporary data, and a collection for view engines for the application.

Reference
http://msdn.microsoft.com/en-us/library/system.web.mvc.actionresult(v=vs.118).aspx

9 January 2014

Set the selected item in an ASP.NET dropdown via the display text

Set the selected item in an ASP.NET dropdown via the display text

Method 1:
ddlItemdetails.Items.FindByText("Shirts").Selected = true;

Method 2:

ddlItemdetails.SelectedValue = ddItems.Items.FindByText("Shirts").Value;


29 December 2013

HttpRequest.UrlReferrer in C# - To get clients previous request that linked to the current URL

HttpRequest.UrlReferrer in C#

Gets information about the URL of the client's previous request that linked to the current URL.

public Uri UrlReferrer { get; }

Uri MyUrl = Request.UrlReferrer;
Response.Write("Referrer URL Port: " + Server.HtmlEncode(MyUrl.Port.ToString()) + "< br >");
Response.Write("Referrer URL Protocol: " + Server.HtmlEncode(MyUrl.Scheme) + "< br >");




25 December 2013

Marshalling

Marshalling

Marshalling (sometimes spelled marshaling) is the process of transforming the memory representation of an object to a data format suitable for storage or transmission, and it is typically used when data must be moved between different parts of a computer program or from one program to another.

Marshalling is similar to serialization and is used to communicate to remote objects with an object.


It simplifies complex communication, using custom/complex objects to communicate instead of primitives.
The opposite, or reverse, of marshalling is called unmarshalling.


XML VS JSON

XML VS JSON

XML - Extensible Markup Language
JSON - Javascript Object Notation

JSON
JSON uses JavaScript syntax for describing data objects, but JSON is still language and platform independent.

JSON is more lighter and efficient than XML

JSON does not provide any display capabilities because it is not a document markup language.

XML

XML’s strength is extensibility and the avoidance of namespace clashes. It holds any data type and can be used to transport full documents with formatting information included. XML is best used when transporting something like a patient chart or text document with markup included.

XML provide display capabilities.

XML structures are based on elements (which can be nested), attributes (which cannot), raw content text, entities, DTDs, and other meta structures.

Finally,

JSON is a better data exchange format. XML is a better document exchange format. Use the right one for the right job.

SOAP VS REST

SOAP VS REST

SOAP - "Simple Object Access Protocol"

REST - "Representational state transfer"

REST
Standard and Unified methods like POST, GET, PUT and DELETE. Its work like how an  website makes a request using HTTP protocol.

Easy to use URI (Uniform resource identifier) format to locate any web resource.

REST is light weighted compared to SOAP

SOAP
SOAP is a lightweight protocol intended for exchanging structured information in a decentralized, distributed environment. SOAP uses XML technologies to define an extensible messaging framework, which provides a message construct that can be exchanged over a variety of underlying protocols. The framework has been designed to be independent of any particular programming model and other implementation specific semantics.

WCF SOAP
The WCF SOAP service can be categorized as operations-based, which means that a SOAP client calls a method that is available as a web service operation on a remote server, and receives a SOAP response.

WCF REST
A WCF REST service can be categorized as resource-based, which means that a REST client sends an HTTP request to programmatically accomplish a business objective. These requests largely employ a GET that is sent to a URI. In return, the client receives the corresponding resource.


Implementing OAuth validation in a Web API

 I mplementing OAuth validation in a Web API Implementing OAuth validation in a Web API using C# typically involves several key steps to sec...