Hi again, I’m Clive

11 years after my last “about me” post, it was time to post an update, as a lot has changed. As per introduction, I’m Clive Ciappara, I’m a Full Stack Developer who is passionate about everything Microsoft.

 

After five years working in the iGaming Industry with Betclic, it was time for a change and was offered a job with Codit – a Belgian company using the latest Microsoft technologies whose aim is to help businesses with their integration needs. Currently working on Nebulus – an IOT management system – which is giving me a lot of exposure to different services available on Azure, .Net Core, and WebApi. Continue reading

How to exclude Json properties from WebApi response using a custom ContractResolver

I am currently working on a Backend API that acts as a middleman to a Front API and a DocumentDB database (the structure is shown in the above image).

 

I had the following class which is used to send data to both the Front API and to the DocumentDB. Some of the fields needed to be hidden when returning a response back to the Front API, since they weren’t useful for the user and for security concerns. First I tried using [JsonIgnore] and [IgnoreDataMember] (as seen below), which successfully excluded the required fields from the response, but using them was also excluding the same fields when sending the data to DocumentDB, so it was a no-go. Continue reading

The correct way to implement StructureMap in .NET Core WebApi when having multiple projects

StructureMap is an IoC/DI container for .Net which has been a long time around. I’ve been using it for these past few years, and after all this time, I found out the correct way to implement it.

This is how I used it before and I’m sure the majority of you are currently using the same methods. In the Registry, I would register each interface and it’s inherited class by calling a “config.for” for each service as follows:

    config.For(typeof(ITestService)).Add(typeof(TestService));
    config.For(typeof(IUserService)).Add(typeof(UserService));
    config.For(typeof(ITenantService)).Add(typeof(TenantService));
    config.For(typeof(IProjectService)).Add(typeof(ProjectService));

And whenever new interfaces and services are added, they need to be registered using a new “config.for” line.

That was the old way, of how I did things. This is the new way. Continue reading

Fix Upload_Max_Filesize for WordPress on Windows Hosting

upload-icon-20606

 

I needed to upload a file on a WordPress website, and the following issue was showing up:

The uploaded file exceeds the upload_max_filesize directive in php.ini

 

All the solutions I found show how to update the php.ini file, but this only works on Linux Hosting. For Windows Server and Windows Hosting accounts, you need to follow the next steps to solve the issue: Continue reading

Fixing AngularJS + MVC Routing Issues

hashratestore_icon-1Currently, I’m working on a hybrid AngularJS and MVC project, one of the tasks being to get rid of the # symbol from the URL. In pure AngularJS apps, this is very easily done by following the next two steps (and easily googled):

  1. Set up your base href in your index page: <head> <base href=”/”> </head>
  2. Add the following in your angular app config: $locationProvider.html5Mode(true)

 

The problem arises when you are in the .NET stack and using AngularJS with MVC. The above solution will still remove the # from URL, but page refresh won’t work. Why? This happens because MVC knows nothing about AngularJS routing and by following default MVC routing, it will look for an MVC page which doesn’t exist. Continue reading

Create a Valid Number #Angular directive that handles decimal points

angular-webapi-valid-number

The below ‘validNumber’ directive verifies that the input field has a valid number by checking the last key pressed. If it is a valid number it continues the operation, but if not the directive prevents the input action and the character is not inserted in the input box.

 

This directive also handles decimal points. To enable this option, you have to add ‘enable-decimals’ as an attribute in the <input type=”text”> html code and assign ‘true’ or ‘false’ as required. Continue reading

Back to the Future Day – Enjoy 21 October 2015!

Today is the Day that a lot of people were waiting from the year 1989, the day that Marty McFly and Doc Brown arrive to the future/today. Is your Hoverboard charged? Are your Sneakers self-tied? Is the Pizza hydrated? Fax received? Then you’re ready to follow the action as the world celebrates this day. I’ll continue updating this post with more videos from the past and from around the world 🙂 Enjoy:

Let’s start with the trailer of Back to the Future Part II

Continue reading

Hey Lumia. Your next Windows Mobile and PC with Continuum!

lumia

The New Lumia 950 has adaptive antenna technology which means it has two antennas and windows will choose the best antenna

It also has the latest octacore and hexacore processors and it has liquid cooling technology which the Lumia team got from the Surface team.

The new camera is very good in lowlight. It has triple LED which means no more red eyes and no more seeing people like ghosts in photos.

It has 32GB and allows up to 256GB 2TB external storage when SD Cards catch up.

It has Cortana, it has Office, it has Edge, and it has Octacores in your pocket. You can unlock your phone using face detection.

Now it’s time for Continuum.

lumia 2

Above is the device to connect your phone to a monitor.

You can also Multitask like you do on your Windows 10 PC. You can still use your phone whilst your phone is connected to the monitor!

lumia 4

You can ALT+TAB on your phone!

The Lumia 950 will be priced at $549 and the Lumis 950 XL will be priced at $649.

Welcome to the new Microsoft Band

band

Microsoft just launched the new Microsoft Band. Next are some specifications about the Microsoft Band:

  • Curved Gorilla Glass
  • Build-In GPS
  • Sleep Monitoring
  • UV monitoring
  • Social Updates
  • Cortana Integration

Microsoft also added the 11th Sensor, a Barometer, good for biking/hiking.

band2

It has all the functionality between Windows, IOS, and Android and it will be available for pre-order today for $249.