Обнародование enum - PullRequest
       2

Обнародование enum

0 голосов
/ 15 мая 2018

Я делаю библиотеку C # только с одним классом, который должен выступать в качестве оболочки для некоторых веб-сервисов.

Эти службы имеют свои собственные классы и списки.

В некоторых моих функциях некоторые параметры должны быть перечислениями из веб-службы (проще всего это сделать).

Но когда мне нужно вызвать эту функцию из кода, использующего данную библиотеку, это заканчивается примерно так:

LibraryClass.FunctionName(LibraryName.WebServicesName.EnumName.EnumValue);

Можно ли сделать код более похожим на это:

LibraryClass.FunctionName(EnumName.EnumValue);

путем предоставления перечисления из веб-сервисов в классе библиотеки?

Я знаю, что могу сделать это, создав свой собственный Enum в классе библиотеки, и я, вероятно, сделаю это, но мне в голову пришли эти вопросы, и я остановился здесь, чтобы спросить: возможно ли выставлять перечисления как этот?

1 Ответ

0 голосов
/ 15 мая 2018

С новым using static, добавленным в C # 6, то, что вы хотите, может быть легко сделано.

using static LibraryName.WebServicesName;

Это позволит вам импортировать статические члены класса Library.WebServicesName, его вложенных классов и перечислений в ваше собственное пространство имен.

Пример использование

using System;
using static LibraryName.WebServicesName;

public class Program
{
    public static void Main()
    {
        Console.WriteLine(EnumName.Foo);
    }
}

namespace LibraryName
{
    class WebServicesName{

        public enum EnumName { Foo, Bar}
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...