#c# #asp.net #file #header #using
#c# #asp.net #файл #заголовок #использование
Вопрос:
Есть ли способ создать единый файл типа «заголовок» в C #?
В C у вас было что-то вроде «Mainheader.h», в котором были все ваши включения.
Есть ли способ сделать что-то подобное для C #, где у вас был один файл со всеми вашими ключевыми словами «using»?
Прямо сейчас у меня есть множество вариантов использования, таких как:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Net.Mail;
Есть ли способ поместить их все в один заголовочный файл?
Комментарии:
1. Нет. Каждый файл должен иметь свои собственные операторы using, по одному на строку. Если вам нужна функциональность, подобная C , почему бы просто не использовать C ? 😉
2. это должен быть ответ, а не комментарий.
3. И, ну, использование не включает, они только делают пространства имен видимыми для вашего кода.
4. Вам не нужно иметь ни одного оператора using, если вы добавляете ссылку на проект Visual Studio и предоставляете полное пространство имен для всего. То, что вы хотите, не имеет смысла.
Ответ №1:
Нет. Директивы Using применяются только к текущему исходному файлу.
Лично я бы все равно не хотел этого делать — using
директивы обычно дают мне представление о том, какой код я увижу в классе, и могут указывать на запах кода, если слишком много разрозненных. (Я также стараюсь не забывать выполнять «Упорядочивать и сортировать использование» перед регистрацией.)
Ответ №2:
Не совсем. Подход «mainheader.h» сработал для C , потому что заголовки — это буквально текстовые копии и вставки, которые компиляторы выполняют перед фактической компиляцией, отсюда и термин «директива препроцессора».
Что может оказаться полезным, так это создать шаблон, содержащий некоторые из ваших наиболее часто используемых директив. Вот ссылка на то, как это сделать в Visual Studio 2010: http://msdn.microsoft.com/en-us/library/6db0hwky.aspx . Вы также можете сделать это в MonoDevelop, но это немного сложнее и включает прямое редактирование XML. Надеюсь, этого достаточно в качестве обходного пути.
Ответ №3:
Нет, это невозможно. Компилятор C # не поддерживает идею централизации using
операторов в одном файле.