Вариант переключения в C # - ожидается постоянное значение

Мой код следующий:

public static void Output<T>(IEnumerable<T> dataSource) where T : class
{   
    dataSourceName = (typeof(T).Name);
    switch (dataSourceName)
    {
        case (string)typeof(CustomerDetails).Name.ToString(); :
            var t = 123;
            break;
        default:
            Console.WriteLine("Test");
    }
}

Но это не работает. Оператор case дает мне ошибку, указывающую, что ожидается постоянная переменная. Пожалуйста, помогите ребятам спасибо!

-121--656722- Как остановить proguard от обмана всего пакета? Мне нужно предотвратить Proguard от обмана любых классов из пакета com.foo. *. Я попробовал: -keep com.foo. * * {< поля >; < методы >; < конструкторы >; } Но...

Мне нужно не допустить, чтобы Proguard запутал какие-либо классы из пакета com.foo. * .

Я пытался:

-keep com.foo.** {
    <fields>;
    <methods>;
    <constructors>;
}

Но proguard говорит:

Ошибка: Непредвиденное ключевое слово 'com.sun.foo. * *' в строке 32 файла 'obfuscationConfig.pro', включенный из аргумента number 1

Я получаю аналогичную ошибку, если я пытаюсь сохранить имя com.foo * * или сохранить * com.foo. * * .

18
задан David 29 September 2011 в 06:51
поделиться