Showing posts with label Ajax. Show all posts
Showing posts with label Ajax. Show all posts

Wednesday, June 29, 2011

.NET and ASP.NET interview questions: -Show us steps to consume web services in AJAX?

Answer:
The simple answer to the above question is by using the ‘asp:ServiceReference’ tag inside ‘asp:scriptmanager’ tag as shown in the below code snippet. Inside the ‘servicereference’ tag provide the ASMX file name.


Following is the video for consuming webservices in AJAX: -


Now let’s go a for a long answer and a step by step answer.

Normally consumption of web services happens as shown in the below figure. The browser Ajax controls calls the ASP.NET code and the ASP.NET code consumes the web service. But there are scenarios where you would like to call the web services directly from the Ajax JavaScript functions rather than calling via the behind code. This article will demonstrate how we can achieve the same.


Step 1: Create your Customer Class

The first step is to create the customer class as shown below. So ourcustomer class has 4 properties on customer id, first name, address and designation.

public class Customers
{
// private properties
private int _intCustomerID;
private string _strFirstName;
private string _strAddress;
private string _strDesignation;

// Public property and
public int CustomerID
{
get
{
return _intCustomerID;
}
set
{
_intCustomerID = value;
}
}

public string FirstName
{
get
{
return _strFirstName;
}
set
{
_strFirstName = value;
}
}

Step 2: Create your Web Service

The next step is we need to create the web service which exposes the customer class to our UI. Below is a simple web service which has encapsulated customer collection. In the constructor, we are loading some dummy data into the list of customers as shown in the below code snippet:

[System.Web.Script.Services.ScriptService]
public class Customer : System.Web.Services.WebService {

// Customer collection
List listcust = new List();
public Customer ()
{
//Load some dummy data in to customer collection.
listcust.Clear();
Customers cust = new Customers();
cust.CustomerID = 1;
cust.FirstName = "Taha";
cust.Address = "Live in India";
cust.Designation = "Software Developer";
listcust.Add(cust);

cust = new Customers();
cust.CustomerID = 2;
cust.FirstName = "Shyam";
cust.Address = "Live in Austrailia";
cust.Designation = "Web Designer";
listcust.Add(cust);

cust = new Customers();
cust.CustomerID = 3;
cust.FirstName = "Khadak";
cust.Address = "Live in London";
cust.Designation = "Architect";
listcust.Add(cust);
}

// This function exposes all customers to the end client’
[WebMethod]
public List LoadCustomers()
{
return listcust;
}

// This function helps us to get customer object based in ID

[WebMethod]
public Customers LoadSingleCustomers(int _customerid)
{
return (Customers)listcust[_customerid-1];
}

We are also exposing two functions through the web service, one which gives out a list of customers and another which gives out individual customer data based on customer id.

Step 3: Reference your Web Service using the asp:servicereference


Using the ‘asp:ServiceReference’, we will then point the path to the ASMX file as shown in the below code snippet. This will generate the JavaScript proxy which can be used to call the customer object.

Step 4: Call the Webservice and the JavaScript Code

Once you have defined the proxy, you can now call the ‘Customer’ proxy directly to make method calls.

function LoadAll()
{
Customer.LoadCustomers(LoadCustomerToSelectOption, ErrorHandler, TimeOutHandler);
}

When you call the JavaScript proxy object, we need to provide three functions; the first function (‘LoadCustomerToSelectOption’) will be called when the web service finishes and returns data. The data will be returned in the fill variable which will then be looped and added to the customer combo box.

function LoadCustomerToSelectOption(Fill)
{
var select = document.getElementById("cmbCustomers");

for (var i = 0; i < Fill.length; i++)
{
var value = new Option(Fill[i].FirstName, Fill[i].CustomerID);
select.options.add(value);
}
}

There are two more functions which are attached; one which handles error and the other which handles time out. Below are the code snippets for the same:

function ErrorHandler(result)
{
var msg = result.get_exceptionType() + "\r\n";
msg += result.get_message() + "\r\n";
msg += result.get_stackTrace();
alert(msg);
}
function TimeOutHandler(result)
{
alert("Timeout :" + result);
}

Please click here to see more .Net and Asp.Net interview questions

Regards,

Visit Authors blog for more .Net and Asp.Net interview Question






Wednesday, December 29, 2010

22 important.net interview questions on ATLAS-AJAX

22 important.net interview questions on ATLAS-AJAX

This section will cover the most asked questions related to ATLAS-AJAX during .net interview by the interviewer so have a look on the following and do revise it when ever you go for the .net interview
Normally the .net interviewer starts with.....

What problem does Ajax solve?
What is Ajax?
What is the fundamental behind Ajax?
What is JSON?
How do we use XMLHttpRequest object in JavaScript?
How do we do asynchronous processing using Ajax?
What are the various states in XMLHttpRequest and how do we check the
same?

How can we get response text?
How can we send request to the server using the XMLHttpRequest component?
How do we pass parameters to the server?
How can we create a class in JavaScript using Atlas?
How do we do inheritance-using Atlas?
How do we define interfaces using Atlas?
How do we reference HTML controls using Atlas?
Can you explain Scriptmanager control in Ajax?
Can you explain Enablepartialrendering and UpdatePanel control in Ajax?
Can you explain the concept of triggers in ‘UpdatePanel’ control?
Can you explain the ‘UpdateProgress’ component?
How can you do validations in Ajax?
How do we do exception handling in Ajax?
How do we consume web service in Atlas?
How can we consume data directly in web services?

So friends answering to above question on ATLAS-AJAX of .net interview questions helped me to clear topic on ATLAS-AJAX in front of the interviewer.

Saturday, February 20, 2010

4 steps to consume web services using Ajax (Includes Video tutorial)

Introduction and Goal

In this article we will try to understand the 4 important steps to consume web service directly in Ajax. In this sample we will create a simple customer combo box as shown in the figure below. This customer combo box will be filled by calling the web service methods directly of the customer web service.

Here’s my small gift for all my .NET friends , a complete 400 pages FAQ Ebook which covers various .NET technologies like Azure , WCF , WWF , Silverlight , WPF , SharePoint and lot more
http://www.questpond.com/SampleDotNetInterviewQuestionBook.zip

Video tutorial

This whole article is also demonstrated in video format which you can view from here http://www.youtube.com/watch?v=FvpXZdRTr4Q .
Introduction
Normally consumption of web services happens as shown in the below figure. The browser Ajax controls calls the ASP.NET code and the ASP.NET code consumes the web service. But there are scenarios where you would like to call the web services directly from the ajax javascript functions
rather than calling via the behind code. This article will demonstrate how we can achieve the same.



Step 1 Create your customer class

The first step is to create the customer class as shown below. So our customer class has 4 properties on customer id, first name, address and designation.
public class Customers
{
// private properties
private int _intCustomerID;
private string _strFirstName;
private string _strAddress;
private string _strDesignation;

// Public property and
public int CustomerID
{
get
{
return _intCustomerID;
}
set
{
_intCustomerID = value;
}
}

public string FirstName
{
get
{
return _strFirstName;
}
set
{
_strFirstName = value;
}
}

Step 2:- Create your web service

The next step is we need to create the web service which exposes the customer class to our UI. Below is a simple web service which has encapsulated customer collection. In the constructor we are loading some dummy data in to the list of customer as shown in the below code snippet.[System.Web.Script.Services.ScriptService]

public class Customer : System.Web.Services.WebService {

// Customer collection
List<Customers> listcust = new List<Customers>();
public Customer ()
{
//Load some dummy data in to customer collection.
listcust.Clear();
Customers cust = new Customers();
cust.CustomerID = 1;
cust.FirstName = "Taha";
cust.Address = "Live in India";
cust.Designation = "Software Developer";
listcust.Add(cust);
cust = new Customers();
cust.CustomerID = 2;
cust.FirstName = "Shyam";
cust.Address = "Live in Austrailia";
cust.Designation = "Web Designer";
listcust.Add(cust);
cust = new Customers();
cust.CustomerID = 3;
cust.FirstName = "Khadak";
cust.Address = "Live in London";
cust.Designation = "Architect";
listcust.Add(cust);
}
// This function exposes all customers to the end client’
[WebMethod]
public List<Customers> LoadCustomers()
{
return listcust;
}
// This function helps us to get customer object based in ID
[WebMethod]
public Customers LoadSingleCustomers(int _customerid)
{
return (Customers)listcust[_customerid-1];
}

We are also exposing two functions through the web service one which give out a list of customers and other which gives out individual customer data based in customer id.

Step 3:- Reference your web service using the asp:servicereference

Using the ‘asp:ServiceReference’ we will then point the path to the ASMX file as shown in the below code snippet. This will generate the JavaScript proxy which can be used to call the customer object.
<asp:ScriptManager ID="ScriptManager1" runat="server">
<Services>
<asp:ServiceReference Path="Customer.asmx" />
</Services>
</asp:ScriptManager>

Step 4:- Call the webservice and the javascript code

Once you have defined the proxy you can now call the ‘Customer’ proxy directly to make method calls.function LoadAll()
{
Customer.LoadCustomers(LoadCustomerToSelectOption, ErrorHandler, TimeOutHandler);
}

When you call the JavaScript proxy object we need to provide three functions the first function (‘LoadCustomerToSelectOption’) will be called on the web service finishes and returns data. The data will be returned in the fill variable which will then be looped and added to the customer combo box.

function LoadCustomerToSelectOption(Fill)
{
var select = document.getElementById("cmbCustomers");
for (var i = 0; i < Fill.length; i++)
{
var value = new Option(Fill[i].FirstName, Fill[i].CustomerID);
select.options.add(value);
}
}

There are two more functions which are attached one which handles error and the other which handles time out. Below are the code
snippets for the same.
function ErrorHandler(result)
{
var msg = result.get_exceptionType() + "\r\n";
msg += result.get_message() + "\r\n";
msg += result.get_stackTrace();
alert(msg);
}
function TimeOutHandler(result)
{
alert("Timeout :" + result);
}

Sunday, February 3, 2008

Added some extra questions on Ajax

Busy updating my 4 th edition on .NEt Interview questions. Below are the list of new questions added to Ajax.
ATLAS-AJAX

What problem does Ajax solve?

What is Ajax?

What is the fundamental behind Ajax?

What is JSON?

How do we use XMLHttpRequest object in JavaScript?

How do we do asynchronous processing using Ajax?

What are the various states in XMLHttpRequest and how do we check the same?

How can we get response text?

How can we send request to the server using the XMLHttpRequest component?

How do we pass parameters to the server?

How can we create a class in JavaScript using Atlas?

How do we do inheritance-using Atlas?

How do we define interfaces using Atlas?

How do we reference HTML controls using Atlas?

Can you explain Scriptmanager control in Ajax?

Can you explain Enablepartialrendering and UpdatePanel control in Ajax?

Can you explain the concept of triggers in ‘UpdatePanel’ control?

Can you explain the ‘UpdateProgress’ component?

How can you do validations in Ajax?

How do we do exception handling in Ajax?

How do we consume web service in Atlas?

How can we consume data directly in web services?