int value=0; if (value == 0) { value = null; } How can I set value to null above?
Any help will be appreciated.
In .Net, you cannot assign a null value to an int or any other struct. Instead, use a Nullable<int>, or int? for short:
int? value = 0; if (value == 0) { value = null; } Further Reading
int, it cannot receive null as a value, even while debugging. You need to declare it as an int?.nullable. Yet in immediate window, I couldn't assign null.Additionally, you cannot use "null" as a value in a conditional assignment. e.g...
bool testvalue = false; int? myint = (testvalue == true) ? 1234 : null; FAILS with: Type of conditional expression cannot be determined because there is no implicit conversion between 'int' and '<null>'.
So, you have to cast the null as well... This works:
int? myint = (testvalue == true) ? 1234 : (int?)null; As of C# 9.0 you can use "Target-Typed" conditional expresssions, and the example will now work as c# 9 can pre-determine the result type by evaluating the expression at compile-time.
?: tries to deduce the type of the result. It gets int for the first part and null for the second part. It can't implicitly resolve those two. But, when casting the null to be a Nullable<int> (shorthand int?) then the implicit cast of int to int? is found and used for the final assignment.You cannot set an int to null. Use a nullable int (int?) instead:
int? value = null; public static int? Timesaday { get; set; } = null; OR
public static Nullable<int> Timesaday { get; set; } or
public static int? Timesaday = null; or
public static int? Timesaday or just
public static int? Timesaday { get; set; } static void Main(string[] args) { Console.WriteLine(Timesaday == null); //you also can check using Console.WriteLine(Timesaday.HasValue); Console.ReadKey(); } The null keyword is a literal that represents a null reference, one that does not refer to any object. In programming, nullable types are a feature of the type system of some programming languages which allow the value to be set to the special value NULL instead of the usual possible values of the data type.
https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/null https://en.wikipedia.org/wiki/Null
value. For example,Enum.Parse,String.IndexOfand (logically)Dictionary<,>.TryGetValue.