예제 #1
0
        public void InitYearOnly()
        {
            string aCFormat   = null;
            bool   aDualDated = false;
            string aNewYear   = null;

            CommonEnums.DateQuality aQuality = CommonEnums.DateQuality.unknown;
            string aStart = "1939";
            string aStop  = "1948";

            testVal = new DateObjectModelSpan(aStart, aStop, aCFormat, aDualDated, aNewYear, aQuality);
        }
        private void writeSpan(ref Utf8JsonWriter argWriter, DateObjectModelSpan argSpan)
        {
            writeBasic(ref argWriter, argSpan);

            argWriter.WriteString("GCformat", argSpan.GCformat);

            argWriter.WriteBoolean("GDualdated", argSpan.GDualdated);

            argWriter.WriteString("GNewYear", argSpan.GNewYear);

            argWriter.WriteNumber("GQuality", (int)argSpan.GQuality);

            argWriter.WriteStartObject("GStart");
            writeVal(ref argWriter, argSpan.GStart);
            argWriter.WriteEndObject();

            argWriter.WriteStartObject("GStop");
            writeVal(ref argWriter, argSpan.GStop);
            argWriter.WriteEndObject();
        }
        private DateObjectModelSpan readSpan(ref Utf8JsonReader argReader)
        {
            DateObjectModelSpan returnDate = new DateObjectModelSpan();

            while (argReader.Read())
            {
                if (argReader.TokenType == JsonTokenType.EndObject)
                {
                    return(returnDate);
                }

                if (argReader.TokenType == JsonTokenType.PropertyName)
                {
                    string propertyName = argReader.GetString();
                    argReader.Read();
                    switch (propertyName)
                    {
                    case "GDualdated":
                    {
                        Boolean argValue = argReader.GetBoolean();
                        returnDate.GDualdated = argValue;
                        break;
                    }

                    case "GQuality":
                    {
                        returnDate.GQuality = (DateQuality)argReader.GetInt32();
                        break;
                    }

                    case "GStart":
                    {
                        returnDate.GStart = readVal(ref argReader);

                        break;
                    }

                    case "GStop":
                    {
                        returnDate.GStop = readVal(ref argReader);

                        break;
                    }

                    case "GCformat":
                    {
                        returnDate.GCformat = argReader.GetString();

                        break;
                    }

                    case "GNewYear":
                    {
                        returnDate.GNewYear = argReader.GetString();
                        break;
                    }

                    case "HLinkKey":
                    {
                        returnDate.HLinkKey.Value = argReader.GetString();
                        break;
                    }

                    case "ModelItemGlyph.Symbol":
                    {
                        returnDate.ModelItemGlyph.Symbol = argReader.GetString();
                        break;
                    }

                    case "ModelItemGlyph.SymbolColour":
                    {
                        returnDate.ModelItemGlyph.SymbolColour = Color.FromHex(Convert.ToString(argReader.GetString(), System.Globalization.CultureInfo.CurrentCulture));
                        break;
                    }

                    case "NotionalDate":
                    {
                        returnDate.NotionalDate = argReader.GetDateTime();
                        break;
                    }

                    case "Valid":
                    {
                        Boolean argValue = argReader.GetBoolean();
                        returnDate.Valid = argValue;
                        break;
                    }

                    case "ValidDay":
                    {
                        Boolean argValue = argReader.GetBoolean();
                        returnDate.ValidDay = argValue;
                        break;
                    }

                    case "ValidMonth":
                    {
                        Boolean argValue = argReader.GetBoolean();
                        returnDate.ValidMonth = argValue;
                        break;
                    }

                    case "ValidYear":
                    {
                        Boolean argValue = argReader.GetBoolean();
                        returnDate.ValidYear = argValue;
                        break;
                    }

                    default:
                    {
                        throw new JsonException();
                    }
                    }
                }
            }

            return(returnDate);
        }