Ограничить вызов метода определенной страницей в приложении .net (в C #) - PullRequest
0 голосов
/ 13 октября 2010

Привет, у меня есть метод из класса в пользовательской библиотеке, который я хотел бы ограничить, чтобы он вызывался только на определенной странице, каким-то образом используя условные методы.Проблема заключается в том, что мне нужно возвращаемое значение, а условные методы не позволяют возвращать параметры, отличные от void или out.Используя метод void, он работает нормально, но есть ли способ выполнить этот тип условного поведения и все же вернуть значение?Конечно, в конце концов я смог бы справиться так, как показано ниже, но мне любопытны другие варианты.

Мой код сейчас:

в библиотеке:

public bool MyResult {get; private set;}

[Conditional("condition")]
public void MyConditionalMethod(...){
    this.MyResult = DoSomethingElse();
}

на странице:

#define condition
bla bla bla

Спасибо!

1 Ответ

0 голосов
/ 13 октября 2010

Поскольку C # Spec, глава 17, стих 4.2 , прямо говорит:

У условного метода должен быть тип возврата void.

Я полагаю, что это невозможно с C # в этой вселенной.

Тем не менее.

...