Background
In this article, we will learn about web service using the scenario when Our applications often require code to determine the number of days, such as how long the customer is associated with us, also to convert from the date of present days into days or years, and so on.
In a normal application, I need to write the Business logic repeatedly for the same requirements so due to the requirements you can write a single web service for Multiple applications that allow an access method on any platform used, so let us start with the basics.
Per-requirement to understand this application
If you are a beginner and you need to understand what a web service is then you can read the article of the author Vidya Vrat Agarwal sir; the article is .NET Web Services.
I hope you read it if you are unfamiliar with web services.
What is a web service?
A "web service is the communication platform between two different or same platform applications that allows using their web method."
In the preceding definition, you observed that I used the two main points in the definition of web service; they are different or same platform application and the second is web method.
So let us learn some basics about it.
What does different or the same application and platform mean?
It means that I can create a web service in any language, such as Java or other languages, and that the language web service can be used in a .Net-based application and also a .Net web service or in another application to exchange information.
What does the web method mean?
The method in web services always starts with [webMethod] attributes, which means that it is a web method that is accessible anywhere, the same as my web application.
To understand more clearly let us represent all the above-given definitions explanation in the following diagram.
In the above diagram, I have shown how the Asp.net Web Service is used in different types of applications. I am trying to explain that I can create a web service in any language, such as Java or other languages, and that the language web service can be used in a .Net-based application as well as Java or other applications and you can also use .Net based web application in Java applications means web Services don't have any platform restrictions.
I hope you understand the basics of a web service.
So let us start to create the web service.
Note. If you closely observe that, there is no separate web service template in .Framework 2010 as you see in 2008 while adding a project or website might be because of WCF.
So let us start using a different way to add a web service using a template.
- "Start" , "All Programs" , "Microsoft Visual Studio 2010".
- "File" , "New Project" , "C#" , "Empty Web Application" (to avoid adding a master page).
- Provide the website a name such as "agetodays" or another as you wish and specify the location.
- Then right-click on Solution Explorer "Add New Item" and you see the web service templates.
Select Web Service Template and click on the add button. Then after that, the Solution Explorer looks as follows.
Then open the Webservice.cs class and write the following method followed by [webMethod] attribute as in.
[WebMethod]
public int converttodaysweb(int day, int month, int year) {
DateTime dt = new DateTime(year, month, day);
int datetodays = DateTime.Now.Subtract(dt).Days;
return datetodays;
}
In the code above I have declared one integer method named converttodaysweb with the three parameters day, month, and year for accepting day, month, and year from the user.
Then after that, I created an object of date time and assigned those variables that I got from the users. I declared another variable in the method that is age today to store the number of days remaining from the user's input date to the current date and finally, I returned that variable.
The webservice.cs file will then look as in the following.
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.Services;
///<summary>
/// Summary description for UtilityWebService
///</summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
// To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
// [System.Web.Script.Services.ScriptService]
public class WebService: System.Web.Services.WebService
{
public WebService()
{
//Uncomment the following line if using designed components
//InitializeComponent();
}
[WebMethod]
public int converttodaysweb(int day, int month, int year)
{
DateTime dt = new DateTime(year, month, day);
int datetodays = DateTime.Now.Subtract(dt).Days;
return datetodays;
}
}
Now run the application that looks as follows.
Now in the above image, we see the method that we created for the webservice.cs file, so click on that method to provide input values and click on the "invoke" link.
The output will be as follows.
In the screen above you see that the output is 8671, which is the days from the input date.
Note. For detailed code please download the zip file attached above.
Summary
From all the examples above we see how to convert a date into days. In my next article we will learn how to implement this web service in a web application so click here to learn Consuming Web Service In an ASP.Net Web Application. I hope this article is useful for all students and beginners. If you have any suggestions related to this article then please contact me.