public ITable <T> Table <T>() where T : ITableRow { ITable <T> table = null; IConnector connector = new SqlServerConnector(ConnectionString); if (typeof(T) == typeof(Station)) { table = new StationTable(connector) as ITable <T>; } else if (typeof(T) == typeof(Line)) { table = new LineTable(connector) as ITable <T>; } else if (typeof(T) == typeof(StationLine)) { table = new StationLineTable(connector) as ITable <T>; } else if (typeof(T) == typeof(MetroTransfer)) { table = new MetroTransferTable(connector) as ITable <T>; } return(table); }
// �o�^�ǖ� //========================================================================= /// <summary> /// �e���r�ǖ��e�[�u���ɓo�^���� /// </summary> /// <remarks> /// </remarks> /// <history>2006/XX/XX �V�K�쐬</history> //========================================================================= internal static void ModifyStationTable( string n , // �e���r�ǖ� string r ) { List<StationTable> list = LoadStationTable(); bool w = true; // �V�K�lj��t���O foreach (StationTable e in list) { if (e.Name.ToUpper().Equals(n.ToUpper())) { e.RegName = r; w = false; } } if ( w ) { StationTable e = new StationTable(); e.Name = n; e.RegName = r; list.Add( e ); } SaveStationTable( list ); }
//========================================================================= /// <summary> /// �e���r�ǖ��e�[�u����ǂݍ��� /// </summary> /// <remarks> /// </remarks> /// <history>2006/XX/XX �V�K�쐬</history> //========================================================================= internal static List<StationTable> LoadStationTable() { XmlReader r; List<StationTable> list = new List<StationTable>(); StationTable t = null; try { r = XmlReader.Create(TvStationsXml); while (r.Read()) { if (r.NodeType == XmlNodeType.Element) { if (r.LocalName.ToUpper().Equals("STATION")) { t = new StationTable(); } if (r.LocalName.ToUpper().Equals("NAME")) { t.Name = r.ReadElementContentAsString(); } if (r.LocalName.ToUpper().Equals("REGNAME")) { t.RegName = r.ReadElementContentAsString(); } } else if (r.NodeType == XmlNodeType.EndElement) { if (r.LocalName.ToUpper().Equals("STATION")) { list.Add(t); } } } r.Close(); }catch (Exception) { list.Clear(); } return list; }