Thursday 9 March 2017

switch case on data type in C#

private static bool IsValidForMerge(dynamic primaryValue, dynamic secondaryValue)

{
 if (secondaryValue == null) return false;
switch (secondaryValue.GetType().ToString() as string)
{
 case "Decimal":
decimal d1;
decimal.TryParse(secondaryValue, out d1);
decimal d2;
decimal.TryParse(secondaryValue, out d2);
return d1 == default(decimal) && d2 != default(decimal);
case "Int32":
int i1;
int.TryParse(secondaryValue, out i1);
int i2;
int.TryParse(secondaryValue, out i2);
return i1 == default(int) && i2 != default(int);
case "String":
return string.IsNullOrEmpty(primaryValue) && !string.IsNullOrEmpty(secondaryValue);
case "DateTime":
DateTime dt1;
DateTime.TryParse(secondaryValue, out dt1);
DateTime dt2;
DateTime.TryParse(secondaryValue, out dt2);
return dt1 == default(DateTime) && dt2 != default(DateTime);
case "Guid":
Guid g1;
Guid.TryParse(secondaryValue, out g1);
Guid g2;
Guid.TryParse(secondaryValue, out g2);
return g1 == default(Guid) && g2 != default(Guid);
}
 return false;

}

Thursday 2 March 2017

filter in angularjs

var empName = $filter('filter')($scope.Employees, function (value) { return value.EmpName === "Hamid"; });

localStorage in angularjs

$window.localStorage.setItem('lastRouteName', $stateParams.name);

var previousRouteName =               $window.localStorage.getItem('lastRouteName')

select option in angularjs

<select class="form-control" data-ng-options="e as e.EmpName for e in Employees"></select>



update duplicate recrod in sql

;WITH cteEmp AS
(
  SELECT
      ROW_NUMBER() OVER(PARTITION BY Name  ORDER BY Name ) AS rno,
      Name
  FROM Emp where EmpId IS NOT NULL
)
UPDATE cteEmp SET Name =Name +CAST(rno AS VARCHAR)
WHERE rno>1