Чтение онлайн

ЖАНРЫ

Программирование мобильных устройств на платформе .NET Compact Framework
Шрифт:

InsertEnglishGermanWordPair(cmd, "Book", "Buch",

VocabularyWord.WordGender.Neuter, VocabularyWord.WordFunction.Noun);

}

//----------------------------

//Помещает слово в базу данных

//----------------------------

static private void InsertEnglishGermanWordPair(

System.Data.SqlServerCe.SqlCeCommand cmd,

string englishWord, string germanWord,

VocabularyWord.WordGender germanWordGender,

VocabularyWord.WordFunction wordFunction) {

cmd.CommandText = "INSERT INTO " + TRANSLATIONTABLE_NAME + "(" +

TRANSLATIONTABLE ENGLISH_COLUMN + ", " +

TRANSLATIONTABLE_GERMAN_COLUMN + ", " +

TRANSLATIONTABLE_GERMANGENDER_COLUMN + ", " +

TRANSLATIONTABLE_WORDFUNCTION_COLUMN + ") VALUES ('" +

englishWord + "', '" + germanWord + "', '" +

System.Convert.ToString(((int) germanWordGender))+ "', '" +

System.Convert.ToString(((int) wordFunction)) + "' )";

cmd.ExecuteNonQuery;

}

} //Конец класса

Листинг 14.7. Пример кода управления данными для GameData.cs

//-----------------------------------------------------------------

//Код управления данными в памяти

//

//Этот код предназначен для управления представлением кода в памяти

//-----------------------------------------------------------------

using System;

internal class GameData {

//Массив списков для сохранения загружаемых данных

private static System.Collections.ArrayList m_vocabularyWords All;

private static System.Collections.ArrayList m_vocabularyWords_Nouns;

private static System.Collections.ArrayList m_vocabularyWords_Verbs;

private static System.Collections.ArrayList m_vocabularyWords_Adjectives;

private static System.Collections.ArrayList m_vocabularyWords_Adverbs;

private static System.Collections.ArrayList m_vocabularyWords_Prepositions;

public static bool isGameDataInitialized {

//Инициализация данных игры, если слова загружены

get {

return (m_vocabularyWords_All != null);

}

}

//Возвращает коллекцию всех имеющихся слов

public static System.Collections.ArrayList AllWords {

get {

//Загрузить данные, если они не были инициализированы

if (m_vocabularyWords_All == null) {

InitializeGameVocabulary;

}

return m_vocabularyWords_All;

}

}

//Возвращает коллекцию всех имеющихся имен существительных

public static System.Collections.ArrayList Nouns {

get {

//Загрузить данные, если они не были инициализированы

if (m_vocabularyWords_Nouns == null) {

InitializeGameVocabulary;

}

return m_vocabularyWords_Nouns;

}

}

//==========================================================

//Загружает данные из нашей базы данных

//==========================================================

static public void InitializeGameVocabulary {

//Создать новый массив списков для хранения наших слов

m_vocabularyWords_All = new System.Collections.ArrayList;

m_vocabularyWords_Nouns = new System.Collections.ArrayList;

m_vocabularyWords Verbs = new System.Collections.ArrayList;

m_vocabularyWords_Adjectives = new System.Collections.ArrayList;

m_vocabularyWords_Adverbs = new System.Collections.ArrayList;

m_vocabularyWords_Prepositions = new System.Collections.ArrayList;

System.Data.IDataReader dataReader;

dataReader = DatabaseAccess.GetListOfWords;

VocabularyWord newWord;

//Обойти все записи

while (dataReader.Read) {

//Поместить данные для только что считанного слова в класс

newWord = new VocabularyWord(

dataReader.GetString(DatabaseAccess.DS_WORDS_COLUMNINDEX_ENGLISHWORD),

dataReader.GetString(DatabaseAccess.DS_WORDS COLUMNINDEX_GERMANWORD),

(VocabularyWord.WordGender)dataReader.GetInt32(DatabaseAccess.DS_WORDS_COLUMNINDEX_GERMANGENDER),

(VocabularyWord.WordFunction)dataReader.GetInt32(DatabaseAccess.DS_WORDS_COLUMNINDEX_WORDFUNCTION));

//Добавить новое слово в массив списков

m_vocabularyWords_All.Add(newWord);

//Слова могут принадлежать нескольким группам, поэтому необходимо

Поделиться с друзьями: