Wednesday, February 5, 2020

Interface with real time Example


Interface means a class that has no implementation of its method, but with just declaration. Other hand, abstract class is a class that can have implementation of some method along with some method with just declarationno implementation.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication1
{
//interface no implementation only declaration
internal interface interfaceName
{
int GetSalary();
}
public class Fresher : interfaceName
{
public int GetSalary()
{
return 10000;
}
}
public class ExpSalary : interfaceName
{
public int GetSalary()
{
return 20000;
}

}
internal class Program
{
public static void Main(string[] args)
{
Fresher fresher = new Fresher();
int fresherSal = fresher.GetSalary();
Console.WriteLine(fresherSal.ToString());
ExpSalary exp = new ExpSalary();
int expSal = exp.GetSalary();
Console.WriteLine(expSal.ToString());
Console.ReadLine();
}
}
}


Abstract with real time Example


Abstract methods implementation and non-implementation method like

Abstract classes are similar to interfaces. You cannot instantiate them, and they may contain a mix of methods declared with or without an implementation. However, with abstract classes, you can declare fields that are not static and final, and define public, protected, and private concrete methods.


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication1
{
//Abstart methods implemetation and non implemetation method like

//abstract Class
public abstract class AbstractClass
{
public abstract void salary();

public void GetEmpName()
{
Console.WriteLine("Naresh");
}


}

//derived class

public class FresherSalary : AbstractClass //inheriting from abstract class
{
public override void salary()

{
Console.WriteLine("Fresher Salary = 10000");
}

}

public class ExpSalary : AbstractClass //inherting from abstract class

{
public override void salary()
{
Console.WriteLine("Exp salary = 20000");
//Console.ReadLine();
}

}

internal class Program
{
public static void Main(string[] args)
{
FresherSalary fresher = new FresherSalary(); //Creating object for fresher
fresher.salary();
ExpSalary exp = new ExpSalary();
exp.salary();
//and calling implemented method in abstart class
exp.GetEmpName();
Console.ReadLine();
}
}
}


What is difference between DTO and POCO classes in VS

POCO- Plain Old CLR (or) Class Object

public class Employee
{
    public int Id {get;set;}
    public string FirstName{get;set;}
    public void Salary()
    { 
        Console.WriteLine("10000");
    }
}
DTO -no behaviour - Data Transfer Object

public class EmployeeDTO
{
    public int Id {get;set;}
    public string FirstName {get;set;}
}

Friday, December 13, 2019

Issue: Visual Studio Displaying integer values in hexadecimal

Solution: Debugging time Go To quick watch in a visual studio And right-click quick watch and unselect hexadecimal

Friday, June 28, 2019

Nuget package Generation for customized DLL

first download "nuget.exe"

open cmd and change the path to  particular folder in which "nuget.exe" is downloaded.

generate nuspec file using folling command - nuget spec "E:\Naresh\proj.csproj"

package -  it will generate this type of file like proj.csproj.nuspec

edit that file to make necessary changes like below


<?xml version="1.0"?>
<package >
  <metadata>
    <id>proj</id> // project name
    <version>1.0.0</version>
    <authors>Naresh</authors>
    <owners>Naresh</owners>
    <requireLicenseAcceptance>false</requireLicenseAcceptance>
    <description>Package description</description>
    <releaseNotes>Summary of changes made in this release of the package.</releaseNotes>
    <copyright>Copyright 2019</copyright>
    <tags>Tag1 Tag2</tags> // no need
    <dependencies>
      <dependency id="SampleDependency" version="1.0" /> //no need of samples
    </dependencies>
  </metadata>
  <files>
    <file src="E:\Naresh\proj\bin\Debug\*.*" target="lib\net461" /> // main project file to package - means debug location
  </files>
</package>


we need build the package based on that nuspec file- example cmd path E:\download> nuget pack proj.csproj.nuspec

done...

application goto project manage nuget packages - settings - add one available package source - + click and set the path to nuget package in our local system. goto manage and we will see the new package source.. njoyyyy.. by Vasista Bhargav

How to change a DLL version ?

1. Right click on your project. 
2. Click properties. 
3. Go to the Application tab. 
4. Click Assembly Information. 
5. Change Assembly Version or / and File Version. 
6. Click OK. 
7. Click the save button. 
8. Recompile 
this is one way... njoyyyy.. by Vasista Bhargav

Tuesday, June 11, 2019

Monday, June 10, 2019

Resource file "Properties\Resources.resx" cannot be found

Solution: Right-click on the solution and go to resource tab click on add and save that's it 

Tuesday, May 28, 2019

How to encrypt in C# and decrypt in Apex


public class Program
{
private static byte[] cryptkey = Encoding.ASCII.GetBytes("01234567890123456789abcdefabcdef");
private static byte[] initVector = Encoding.ASCII.GetBytes("0123456789012359");
public static void Main()
{
var testo1 = "test";
var testo2 = "pippo\n";
string value = CryptAES(testo1);
Console.WriteLine("Crittare '{0}' produce: {1}", testo1, CryptAES(testo1));
Console.WriteLine("Crittare '{0}' produce: {1}", testo2, CryptAES(testo2));
Console.ReadLine();
}
public static string DecryptAES(string cipherData)
{
try
{
using (var rijndaelManaged =
new RijndaelManaged { Key = cryptkey, IV = initVector, Mode = CipherMode.CBC })
using (var memoryStream =
new MemoryStream(Convert.FromBase64String(cipherData)))
using (var cryptoStream =
new CryptoStream(memoryStream,
rijndaelManaged.CreateDecryptor(cryptkey, initVector),
CryptoStreamMode.Read))
{
return new StreamReader(cryptoStream).ReadToEnd();
}
}
catch (CryptographicException e)
{
Console.WriteLine("A Cryptographic error occurred: {0}", e.Message);
return null;
}
}
public static string CryptAES(string textToCrypt)
{
try
{
using (var rijndaelManaged =
new RijndaelManaged { Key = cryptkey, IV = initVector, Mode = CipherMode.CBC })
using (var memoryStream = new MemoryStream())
using (var cryptoStream =
new CryptoStream(memoryStream,
rijndaelManaged.CreateEncryptor(cryptkey, initVector),
CryptoStreamMode.Write))
{
using (var ws = new StreamWriter(cryptoStream))
{
ws.Write(textToCrypt);
}
return Convert.ToBase64String(memoryStream.ToArray());
}
}
catch (CryptographicException e)
{
Console.WriteLine("A Cryptographic error occurred: {0}", e.Message);
return null;
}
}
}


Thursday, March 28, 2019

LINQ TO ENTITY: Removing special characters inside the “where” expression


IEnumerable<Person> personsList = (from person in repoPersons.All()
         where person.Phone.Replace("+", "").Replace("(", "").Replace(")", "").Replace("-", "").Replace(" ", "").Contains(PhoneNumber)
         select person).ToList()