コード例 #1
0
 public JSONIndex(HTMLContentProvider provider, Uri url)
     : base(provider, url, Guid.Empty)
 {
     retrieveAndParse();
 }
コード例 #2
0
 // New document constructor
 public HTMLDocument(HTMLContentProvider provider, XElement spec, Uri url)
     : base(provider, url)
 {
     topSpec = spec;
 }
コード例 #3
0
        public void preloadAllDocuments()
        {
            // Determine database index maximums

            using (OleDbCommand cmd = new OleDbCommand("Select MAX(Doc_ID) FROM DocumentAssemblerMetadata", conn))
            {
                OleDbDataReader reader = cmd.ExecuteReader();
                if (reader.Read())
                {
                    MaxDocId = (int)reader.GetDouble(0);
                }
            }

            using (OleDbCommand cmd = new OleDbCommand("Select MAX(SynonymID) FROM Synonym", conn))
            {
                OleDbDataReader reader = cmd.ExecuteReader();
                if (reader.Read())
                {
                    MaxSynonymID = (int)reader.GetDouble(0);
                }
            }

            using (OleDbCommand cmd = new OleDbCommand("Select * FROM DocumentAssemblerMetadata", conn))
            {
                OleDbDataReader reader           = cmd.ExecuteReader();
                List <String>   missingProviders = new List <string>();
                while (reader.Read())
                {
                    String providerName = reader.GetString((int)MetadataColumns.ContentProvider);

                    while (!missingProviders.Contains(providerName))
                    {
                        if (contentProviders.ContainsKey(providerName))
                        {
                            HTMLContentProvider provider = contentProviders[providerName];
                            provider.loadDocument(reader);
                            break;
                        }

                        MessageBoxResult result = MessageBox.Show("The database refers to an education content provider that has not been loaded: " + providerName +
                                                                  "\n\nWould you like to locate the content provider specification?", "Missing Content Provider", MessageBoxButton.YesNo);

                        if (result == MessageBoxResult.No)
                        {
                            missingProviders.Add(providerName);
                            break;
                        }
                        else
                        {
                            MainWindow.thisWindow.openContentFile();
                        }
                    }
                }
            }

            using (OleDbCommand cmd = new OleDbCommand("Select * FROM Synonym", conn))
            {
                OleDbDataReader reader = cmd.ExecuteReader();
                while (reader.Read())
                {
                    PatientEducationObject doc;
                    if (EducationObjectsByDatabaseID.TryGetValue((int)reader.GetInt32((int)SynonymColumns.ID), out doc))
                    {
                        doc.LoadSynonym((int)reader.GetDouble((int)SynonymColumns.SynonymID), reader.GetString((int)EducationDatabase.SynonymColumns.Name));
                    }
                }
            }
        }
コード例 #4
0
 // Database load constructor
 public HTMLDocument(HTMLContentProvider provider, XElement spec, OleDbDataReader reader)
     : base(provider, reader)
 {
     topSpec = spec;
 }