ASP.net c # общедоступные функции в пространстве имен - PullRequest
1 голос
/ 27 августа 2010

В моем пространстве имен у меня могут быть открытые классы, доступные для всех других страниц в моем пространстве имен. Как мне иметь публичные функции? Нужно ли создавать класс с функциями в нем? Или есть более простой способ?

Ответы [ 3 ]

5 голосов
/ 27 августа 2010

В C # все функции (которые фактически называются методами в терминологии C #) должны быть объявлены в типе (класс или структура).

Однако существует концепция статических классов в C #, которые подходят для замены «глобальных функций» в старых языках программирования:

public static class MyUtilityFunctions
{
    public static void PrintHello()
    {
        Console.WriteLine("Hello World!");
    }
}

Теперь вы можете где угоднов вашей программе напишите:

MyUtilityFunctions.PrintHello();

Статический метод - это метод, который не требует объекта.Статический класс - это класс, который содержит только статические методы (и статические поля, статические свойства и т. Д.).

2 голосов
/ 27 августа 2010

Функции (методы) «живут» в типах, поэтому вам нужно поместить их в классы или структуры.По умолчанию они будут частными, поэтому вам нужно указать модификатор доступа public, чтобы они были доступны:

namespace myNameSpace
{
  public class myClass
  {
    public void MyMethod()
    {
    }
  }
}

См. MSDN - Методы раздел Руководства по программированию на C #.

1 голос
/ 27 августа 2010

При выполнении C # функции могут жить только в типах (классах и структурах). Вы не можете объявить функцию самостоятельно.

...