Yan Cui
I help clients go faster for less using serverless technologies.
To get the default value of a type, you’ve probably used the default keyword in .Net already:
1: var defaultInt = default(int); // 0
2: var defaultObj = default(string); // null
However, the use of the default keyword requires a type name to be specified at compile time, so you won’t be able to use it on a type which you discover at runtime. Instead, you will need to do something along the line of:
1: public object GetDefaultValue(Type type)
2: {
3: // Handle value types and reference types differently
4: if (type.IsValueType)
5: {
6: return Activator.CreateInstance(type);
7: }
8: else
9: {
10: return null;
11: }
12: }
It’ll yield the same result as using the default keyword:
1: var defaultInt = GetDefaultValue(typeof(int)); // 0
2: var defaultObj = GetDefaultValue(typeof(string)); // null
Whenever you’re ready, here are 4 ways I can help you:
- If you want a one-stop shop to help you quickly level up your serverless skills, you should check out my Production-Ready Serverless workshop. Over 20 AWS Heroes & Community Builders have passed through this workshop, plus 1000+ students from the likes of AWS, LEGO, Booking, HBO and Siemens.
- If you want to learn how to test serverless applications without all the pain and hassle, you should check out my latest course, Testing Serverless Architectures.
- If you’re a manager or founder and want to help your team move faster and build better software, then check out my consulting services.
- If you just want to hang out, talk serverless, or ask for help, then you should join my FREE Community.