コード例 #1
0
        public override void ReadDataRow(DataRow PropRow, Dictionary <string, Int32> NodeMap, Dictionary <Int32, Int32> NodeTypeMap)
        {
            string StringVal = CswTools.XmlRealAttributeName(PropRow[_QuantitySubField.ToXmlNodeName()].ToString());

            if (CswTools.IsFloat(StringVal))
            {
                Quantity = Convert.ToDouble(StringVal);
            }
            CachedUnitName = CswTools.XmlRealAttributeName(PropRow[_UnitNameSubField.ToXmlNodeName()].ToString());

            string NodeId = CswTools.XmlRealAttributeName(PropRow[_UnitIdSubField.ToXmlNodeName()].ToString());

            if (NodeMap != null && NodeMap.ContainsKey(NodeId.ToLower()))
            {
                UnitId = new CswPrimaryKey("nodes", NodeMap[NodeId.ToLower()]);
            }
            else if (CswTools.IsInteger(NodeId))
            {
                UnitId = new CswPrimaryKey("nodes", CswConvert.ToInt32(NodeId));
            }
            else
            {
                UnitId = null;
            }

            if (null != UnitId)
            {
                PendingUpdate = true;
            }
        }