I have problems getting my application that is developed for .NET
Framework 1.1 to work with Mono. The problem is that
CultureInfo.InvariantCulture.Clone() gives me a clone where NumberFormat
and DateTimeFormat is read only. This is not the case on Microsoft .NET
Framework 1.1. An example that tests for read-only follows. On MS .NET
Framework 1.1 both the NumberFormat and DataTimeFormat are read-write but
on Mono they are read-only.

using System;
using System.Globalization;

namespace CloneTest
{
        class CloneTest
        {

                [STAThread]
                static void Main(string[] args)
                {
                        CultureInfo myCultureInfo = (CultureInfo)
CultureInfo.InvariantCulture.Clone();
                        if(myCultureInfo.IsReadOnly)
                        {
                                Console.WriteLine("Wrong: Culture Read-Only");
                        }
                        else
                        {
                                Console.WriteLine("Ok: Culture Read-Write");
                        }
                        
                        //DateTimeFormat
                        if(myCultureInfo.DateTimeFormat.IsReadOnly)
                        {
                                Console.WriteLine("Wrong: myCultureInfo.DataTimeFormat is 
read-only");
                        }
                        else
                        {
                                Console.WriteLine("Ok: myCultureInfo.DataTimeFormat is 
read-write");
                        }

                        //NumberFormat
                        if(myCultureInfo.NumberFormat.IsReadOnly)
                        {
                                Console.WriteLine("Wrong: myCultureInfo.NumberFormat is 
read-only");
                        }
                        else
                        {
                                Console.WriteLine("Ok: myCultureInfo.NumberFormat is 
read-write");
                        }

                        //Throws an exception on Mono saying that myCultureInfo is 
read-only.
                        //myCultureInfo.DateTimeFormat.ShortDatePattern = "yyyy-MM-dd";
                        //The following sequence work on Mono
                        myCultureInfo.DateTimeFormat= new DateTimeFormatInfo();
                        myCultureInfo.DateTimeFormat.ShortDatePattern = "yyyy-MM-dd";

                }
        }
}

Am I missing something or is this an error in Mono, or is it an error in MS .NET Framework 1.1?

Regards,
Fredrik
_______________________________________________
Mono-list maillist  -  [EMAIL PROTECTED]
http://lists.ximian.com/mailman/listinfo/mono-list

Reply via email to