Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- /// <summary>
- /// Данные об объекте.
- /// </summary>
- public class TObjectData
- {
- /// <summary>
- /// Тип объекта.
- /// </summary>
- public string ObjectType { get; protected set; }
- /// <summary>
- /// Идентификатор объекта.
- /// </summary>
- public int ObjectID { get; protected set; }
- /// <summary>
- /// Создать новый объект, инициализированный указанными значениями.
- /// </summary>
- /// <param name="ObjectType">Тип объекта.</param>
- /// <param name="ObjectID">Идентификатор объекта.</param>
- public TObjectData(string ObjectType, int ObjectID)
- {
- this.ObjectType = ObjectType;
- this.ObjectID = ObjectID;
- }
- }
- /// <summary>
- /// Данные об именованом объекте.
- /// </summary>
- public class TNamedObjectData : TObjectData
- {
- /// <summary>
- /// Имя объекта.
- /// </summary>
- public string Name { get; protected set; }
- /// <summary>
- /// Создать новый именованый объект, инициализированный указанными значениями.
- /// </summary>
- /// <param name="ObjectType">Тип объекта.</param>
- /// <param name="ObjectID">Идентификатор объекта.</param>
- /// <param name="Name">Имя объекта.</param>
- public TNamedObjectData(string ObjectType, int ObjectID, string Name) : base(ObjectType, ObjectID)
- {
- this.Name = Name;
- }
- /// <summary>
- /// Получить идентификатор объекта по его имени.
- /// </summary>
- /// <param name="Objects">Массив объектов в котором будет производиться поиск.</param>
- /// <param name="Name">Имя искомого объекта.</param>
- /// <returns>Идентификатор объекта или -1 если объект с таким именем не найден.</returns>
- public static int GetObjectIDByName(TObjectData[] Objects, string Name)
- {
- for (int i = 0; i < Objects.Length; i++)
- {
- // Попытаться привести i-ый элемент массива к типу TNamedObjectData
- TNamedObjectData TempObject = Objects[i] as TNamedObjectData;
- // Если приведение типов прошло успешно, то
- if (TempObject != null)
- {
- if (TempObject.Name == Name)
- {
- return TempObject.ObjectID;
- }
- }
- }
- // Ничего не найдено
- return -1;
- }
- }
Add Comment
Please, Sign In to add comment