Модераторы: Partizan, gambit

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Интерфейсы ошибка 
:(
    Опции темы
DenWPF
Дата 6.4.2010, 22:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1659
Регистрация: 26.9.2009

Репутация: нет
Всего: 1



что не так?
Код

namespace Reduction_reference
{
    interface Service_small
    {
        string GetReductionReference(string uri);
    }
    class Bit_ly : Service_small
    {
        public static void setIBitlyService(string login, string seccode)
        {

        }
        public static string GetReductionReference(string uri)
        {
            return null;
        }
    }
}

PM MAIL   Вверх
diadiavova
Дата 6.4.2010, 22:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 31
Всего: 142



Цитата(DenWPF @  6.4.2010,  23:34 Найти цитируемый пост)
что не так?

static


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
DenWPF
Дата 6.4.2010, 23:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1659
Регистрация: 26.9.2009

Репутация: нет
Всего: 1



убрать? добавить?
или вообще нельзя?
PM MAIL   Вверх
diadiavova
Дата 6.4.2010, 23:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 31
Всего: 142



убрать. А зачем он там? Вообще, когда студия ругается читай сообщения


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
DenWPF
Дата 6.4.2010, 23:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1659
Регистрация: 26.9.2009

Репутация: нет
Всего: 1



эм, ну мне не надо создавать объект это класса.
мне надо просто вызвать функцию а она вернет то что надо мне....

PM MAIL   Вверх
diadiavova
Дата 7.4.2010, 00:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 31
Всего: 142



Цитата(DenWPF @  7.4.2010,  00:18 Найти цитируемый пост)
эм, ну мне не надо создавать объект это класса.
мне надо просто вызвать функцию а она вернет то что надо мне....

И каким образом ты собираешься сделать это через интерфейс? smile 


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
DenWPF
Дата 7.4.2010, 09:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1659
Регистрация: 26.9.2009

Репутация: нет
Всего: 1



нууу я о том же..надо наверное какой то абстрактный класс =) я же о том и говорю что я не знаю.
PM MAIL   Вверх
Dobermann
Дата 7.4.2010, 10:44 (ссылка)    | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 992
Регистрация: 7.1.2008

Репутация: 1
Всего: 0



Из-за одного метода наследовать классу интерфейс по-моему глупо...просто удали интерфейс, а статики оставь...
PM   Вверх
DenWPF
Дата 7.4.2010, 11:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1659
Регистрация: 26.9.2009

Репутация: нет
Всего: 1



а если посмотришь http://forum.vingrad.ru/forum/topic-296555.html то там мне как раз нужен интерфейс..или придется делать через попу..

но это вроде единственный выбор.

PM MAIL   Вверх
Dobermann
Дата 7.4.2010, 11:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 992
Регистрация: 7.1.2008

Репутация: 1
Всего: 0



PM   Вверх
DenWPF
Дата 7.4.2010, 15:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1659
Регистрация: 26.9.2009

Репутация: нет
Всего: 1



в общем спасибо, но конкретизируй на что ты мне указываешь...
проблема так и не решена.
PM MAIL   Вверх
PashaPash
Дата 7.4.2010, 15:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1233
Регистрация: 3.1.2008

Репутация: 13
Всего: 49



DenWPF, через попу - это через интерфейсы, в твоем случае. По ссылке на соседний топик - ты записываешь в файл поля объекта класса, а не статические поля. По крайней мере static там вообще не упоминается.

Опиши задачу нормально, не плоди топики. Ну найдешь ты способ оставить и интерфейс и статик в своем примере (хотя не найдешь на самом деле). Что ты сохранять собираешься? Метод?


--------------------
PM MAIL WWW   Вверх
DenWPF
Дата 7.4.2010, 16:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1659
Регистрация: 26.9.2009

Репутация: нет
Всего: 1



у меня есть 10 классов.
каждый класс имеет статический метод GetStr.

в главном классе я вызваю метод 
Код

Start(string url, string service)
{
    //тут надо вызывать метод из тех 10 классов.
//если service == bit.ly то класс Bit_ly.GetStr(uri)
}

diadiavova помог
//var t = Type.GetType("имя класса");
 //var b = Activator.CreateInstance(t);

но что бы вызвать объект этого класса надо преобразовать с помощью интерфейса.
но через интерфейс не получиться создать метод статический.

есть способ обхода, но diadiavova сказал что это не сильно правельно, хоть и работает.
PM MAIL   Вверх
PashaPash
Дата 7.4.2010, 17:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1233
Регистрация: 3.1.2008

Репутация: 13
Всего: 49



Цитата(DenWPF @  7.4.2010,  16:17 Найти цитируемый пост)

но что бы вызвать объект этого класса надо преобразовать с помощью интерфейса.


да, нужно, но из-за статиков у тебя объектов классов нет. нечего создавать через activator, нечего преобразовывать, негде искать интерфейс, нет объекта, у которого можно вызвать метод.

DenWPF, хочешь правильно - пометь метод аттрибутом. 



--------------------
PM MAIL WWW   Вверх
DenWPF
Дата 7.4.2010, 17:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1659
Регистрация: 26.9.2009

Репутация: нет
Всего: 1



моя твоя не понимать...
реально не понимаю =(
PM MAIL   Вверх
diadiavova
Дата 7.4.2010, 18:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 31
Всего: 142



DenWPF, в соседнем топике ты спрашивал именно как создать экземпляр, поэтому там естественно нужен был интерфейс или общий базовый класс, здесь ты описываешь задачу совсем иначе, теперь тебе экземпляр уже не надо создавать. Так раз задача на самом деле другая, то и решение у неё тоже другое. или как ты думаешь? smile 
В принципе задачу можно было бы и подробнее описать, очень трудно что-то советовать, не зная что нужно на самом деле. Если у тебя все десять классов существуют ради одного метода каждый, то видимо проще было бы в одном классе реализовать все 10 методов и дать им имена, которые ты даёшь классам. В преинципе, если другого способа не найдёшь(из-за секретности информации о проекте smile ), то вызывать методы можно и через жопу рефлексию.


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
DenWPF
Дата 7.4.2010, 18:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1659
Регистрация: 26.9.2009

Репутация: нет
Всего: 1



ладно, использую рефлекцию.

PM MAIL   Вверх
Страницы: (2) [Все] 1 2 
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0529 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.