Exemple #1
0
        static void Main(string[] args)
        {
            //#nullable disable
            //string? message = null;
            Message message = new Message
            {
                //Text = "Hello there!",
                Text = null !,
                From = null
            };

            //#nullable enable
            //Console.WriteLine(message);

            MessagePopulator.Populate(message);
            Console.WriteLine(message.Text);
            //Console.WriteLine(message.From ?? "no from");
            Console.WriteLine(message.From);
            Console.WriteLine(message.From !.Length); //null forgiving operator only affects compile time
            Console.WriteLine(message.ToUpperFrom());
            //string is a reference type
            Console.WriteLine("Press enter to end");
            Console.ReadLine(); //preventing the console app from exiting until pressing enter
        }
    }
        static void Main(string[] args)
        {
            // #nullable disable
            // string message = null;
            // #nullable enable

            // string? message = null;

            Message message = new Message()
            {
                Text = "Hello there!",
                // Text = null!,
                From = null
            };

            MessagePopulator.Populate(message);

            Console.WriteLine(message.Text);
            Console.WriteLine(message.From ?? "From is not specified.");
            Console.WriteLine(message.From !.Length);
            Console.WriteLine(message.ToUpperFrom());

            Console.WriteLine("Press enter to end!");
            Console.ReadLine();
        }
        static void Main(string[] args)
        {
            Message message = new Message {
                Text = "Hello there!",
                From = null
            };

            MessagePopulator.Populate(message);

            Console.WriteLine(message.Text);
            Console.WriteLine(message.From);
            Console.WriteLine(message.From !.Length); // null-forgiving operator
            // only has effect on compiler. If we pass a null value, it will still throw exception at runtime
            // use with great care and only when absolutely necessary. May be useful for tests
            Console.WriteLine(message.ToUpperFrom());

            Console.ReadLine();
        }
        static void Main(string[] args)
        {
            Message message = new Message
            {
                Text = null !,
                From = null
            };

            MessagePopulator.Populate(message);

            Console.WriteLine(message.Text);
            Console.WriteLine(message.From);
            Console.WriteLine(message.From !.Length);
            Console.WriteLine(message.ToUpperFrom());
            Console.WriteLine("Press enter to end");
            Console.ReadLine();
        }
    }