Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.02.2021, 12:21   #1
zw2auP&#j29!
Пользователь
 
Регистрация: 30.04.2020
Сообщений: 19
По умолчанию Метод расширения TryParce

Уважаемые,
класс System.Data.Entity.Hierarchy.Hierar chyId содержит метод Parse. Хочу расширить его методом TryParse
Код:
using System;
using System.Data.Entity.Hierarchy;

namespace Transformation.Utils
{
   /// <summary>
   /// Расширение класса System.Data.Entity.Hierarchy.HierarchyId
   /// </summary>
   public static class HierarchyIdExtension
   {
      /// <summary>
      /// Преобразует строковое представление иерархического идентификатора в эквивалентный ему иерархический идентификатор.
      ///   Возвращает значение, указывающее, успешно ли выполнено преобразование.
      /// </summary>
      /// <param name="source">Строка, содержащая преобразуемый иерархический идентификатор.</param>
      /// <param name="result">
      /// При возвращении этим методом содержит иерархический идентификатор, эквивалентный иерархическому идентификатору, 
      ///   содержащемуся в параметре <code>source</code>, если преобразование выполнено успешно, 
      ///   или <code>null</code>, если оно завершилось сбоем.
      ///   Этот параметр передается неинициализированным; 
      ///   любое значение, первоначально предоставленное в объекте <code>result</code>, будет перезаписано.
      /// </param>
      /// <returns>
      /// Значение <code>true</code>, если параметр <code>source</code> успешно преобразован;
      ///   в противном случае — значение <code>false</code>.
      /// </returns>
      public static bool TryParse(string source, out HierarchyId result)
      {
         result = new HierarchyId();

         try
         {
            result = HierarchyId.Parse(source);
            return true;
         }
         catch (Exception)
         {
            return false;
         }
      }
   }
}
Можно ли это сделать? Куда добавить this?

Добавлю:
Вопрос не про расширение класса String, а про расширение класса HierarchyId. Потому что, например, существует Int32.TryParse, а не String.TryParse.

Последний раз редактировалось zw2auP&#j29!; 25.02.2021 в 14:20.
zw2auP&#j29! вне форума Ответить с цитированием
Старый 01.03.2021, 10:38   #2
WorldMaster
Старожил
 
Аватар для WorldMaster
 
Регистрация: 25.08.2011
Сообщений: 2,841
По умолчанию

Из чего вы парсить то хотите??

Если из строки то:

Код:
public static bool TryParse(this string source, out HierarchyId result)
      {
         result = new HierarchyId();

         try
         {
            result = HierarchyId.Parse(source);
            return true;
         }
         catch (Exception)
         {
            return false;
         }
      }
а если "про расширение класса HierarchyId"

Код:
public static bool TryParse(this HierarchyId  source, out HierarchyId result)
      {
         
      }
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два.
WorldMaster вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
проверка расширения Михаил Юрьевич Общие вопросы Delphi 6 21.01.2014 13:18
Метод перебора, Метод дихотомии, Метод золотого сечения Delphi !!! OneBri Помощь студентам 0 03.10.2012 08:42
Расширения Кристинка89 Общие вопросы Delphi 4 26.08.2011 19:38
Расширения к Firefox Altera Софт 0 22.11.2008 13:49
XMM расширения Gulya Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 17.12.2007 00:45