Click here to Skip to main content
15,919,434 members
Home / Discussions / C#
   

C#

 
GeneralRe: Insert values into a table only if they do not already exist in that table (MS Access) Pin
Ajithevn23-Sep-09 20:20
Ajithevn23-Sep-09 20:20 
GeneralRe: Insert values into a table only if they do not already exist in that table (MS Access) Pin
PIEBALDconsult23-Sep-09 20:32
mvePIEBALDconsult23-Sep-09 20:32 
QuestionInterface type or class type? Pin
shivapriyak23-Sep-09 19:30
shivapriyak23-Sep-09 19:30 
AnswerRe: Interface type or class type? Pin
PIEBALDconsult23-Sep-09 19:46
mvePIEBALDconsult23-Sep-09 19:46 
GeneralRe: Interface type or class type? Pin
shivapriyak23-Sep-09 19:48
shivapriyak23-Sep-09 19:48 
GeneralRe: Interface type or class type? Pin
PIEBALDconsult23-Sep-09 19:58
mvePIEBALDconsult23-Sep-09 19:58 
GeneralRe: Interface type or class type? Pin
shivapriyak23-Sep-09 20:54
shivapriyak23-Sep-09 20:54 
GeneralRe: Interface type or class type? Pin
N a v a n e e t h23-Sep-09 23:19
N a v a n e e t h23-Sep-09 23:19 
Consider the following example for using interface as parameter
class Driver
{
    IVehicle vehicleToDrive = null;
 
    Driver(IVehicle vehicleToDrive){
        this.vehicleToDrive = vehicleToDrive;
    }

    public void StartDriving() {
        vehicleToDrive.Start();
        vehicleToDrive.ChangeGear();
        vehicleToDrive.Accelerate();
    }
}
In the above example, you are programming against an interface. The driver is generic and can drive any vehicle that implements IVehicle. In such situations interfaces are useful.

Following example shows how it is helpful in return types.
IVehicle vehicle = VehicleRepository.Create("Benz"); // you get a benz here which implements IVehicle

class VehicleRepository
{
    public static IVehicle Create(string vehicleName)
    {
        IVehicle vehicle = null;
        if(vehicleName == "Benz")
            vehicle = new Benz();
        else if(vehicleName == "Ford")
            vehicle = new Ford(); 
        return vehicle;
    }
}
VehicleRepository.Create method can implement any concrete type of vehicles without changing the return type.

Here is an example when it is used as field.
class BusinessValidation
{
    IValidator[] validators = { 
            new NameValidator(), 
            new AgeValidator(), 
            new DesignationValidator() };

    void Validate()
    {
        foreach(IValidator validator in validators){
          validator.PerformValidation();
        }   
    }
}
Hope it is clear now.


GeneralRe: Interface type or class type? Pin
shivapriyak24-Sep-09 0:35
shivapriyak24-Sep-09 0:35 
GeneralRe: Interface type or class type? Pin
N a v a n e e t h23-Sep-09 20:00
N a v a n e e t h23-Sep-09 20:00 
GeneralRe: Interface type or class type? Pin
shivapriyak23-Sep-09 21:08
shivapriyak23-Sep-09 21:08 
GeneralRe: Interface type or class type? Pin
N a v a n e e t h23-Sep-09 22:53
N a v a n e e t h23-Sep-09 22:53 
GeneralRe: Interface type or class type? Pin
shivapriyak24-Sep-09 0:36
shivapriyak24-Sep-09 0:36 
GeneralRe: Interface type or class type? Pin
PIEBALDconsult24-Sep-09 5:22
mvePIEBALDconsult24-Sep-09 5:22 
QuestionImport Excel to Database Pin
Member-495917623-Sep-09 18:53
Member-495917623-Sep-09 18:53 
AnswerRe: Import Excel to Database Pin
Richard MacCutchan23-Sep-09 22:39
mveRichard MacCutchan23-Sep-09 22:39 
Questionimage to PDF in C# 2008 Pin
vijaykumarp23-Sep-09 17:36
vijaykumarp23-Sep-09 17:36 
AnswerRe: image to PDF in C# 2008 Pin
Christian Graus23-Sep-09 18:16
protectorChristian Graus23-Sep-09 18:16 
GeneralRe: image to PDF in C# 2008 Pin
vijaykumarp23-Sep-09 21:39
vijaykumarp23-Sep-09 21:39 
QuestionConvertion image to PDF in C# 2008 Pin
vijaykumarp23-Sep-09 17:22
vijaykumarp23-Sep-09 17:22 
AnswerRe: Convertion image to PDF in C# 2008 Pin
Christian Graus23-Sep-09 18:17
protectorChristian Graus23-Sep-09 18:17 
QuestionProblems with getting UserDeletingRow event to work. Pin
gjx_junxian198923-Sep-09 17:06
gjx_junxian198923-Sep-09 17:06 
QuestionPOP3Temp folder ids not Found Pin
shobhit parasher23-Sep-09 13:05
shobhit parasher23-Sep-09 13:05 
QuestionHow to dynamically use C# 3.5 compiler Pin
pbalaga23-Sep-09 11:07
pbalaga23-Sep-09 11:07 
AnswerRe: How to dynamically use C# 3.5 compiler Pin
PIEBALDconsult23-Sep-09 12:07
mvePIEBALDconsult23-Sep-09 12:07 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.