Включить файл в C #, Mono (gmcs) - PullRequest
1 голос
/ 19 марта 2011

Я пишу очень маленькое приложение на C #, и мне нужно включить файл .cs в некоторый класс.Как я могу это сделать?Я ищу какой-то эквивалент PHP "включить файл" или Python "из файла импортировать что-то".Очевидно, что «использование» недостаточно, и файл должен быть как-то связан.И я действительно не хочу запускать какой-то новый супер-огромный-абсолютно бесполезный проект с использованием MonoDevelop или VisualStudio, я бы хотел остановиться на простых gmcs и командной строке.

Ответы [ 2 ]

3 голосов
/ 20 марта 2011

Существует два способа «включить» файл в .NET (и Mono)

  1. Скомпилировать несколько файлов вместе.

    gmcs mainFile.cs includeFile.cs
    

    тогда файлы затемскомпилированные вместе в одну сборку

  2. Скомпилируйте includeFile в отдельную сборку и укажите, что из основной сборки

    gmcs -target:library includeFile.cs
    gmcs -r:includeFile.dll mainFile.cs
    

    таким образом вы получите две сборки

3 голосов
/ 20 марта 2011

Вы просто включаете оба имени файла в командной строке и гарантируете, что пространства имен совпадают или что пространство имен включенного файла импортируется с помощью оператора using или с помощью полностью определенных ссылок.Тогда командная строка для компиляции выглядит следующим образом:

gmcs mainFile.cs includeFile.cs

Обратите внимание, что командная строка mono предназначена для поддержки точно такого же синтаксиса (с несколькими дополнениями), что и компилятор Microsoft, так что это верно для обоихих.

По сути, это то, что делают файлы проекта и Visual Studio (хотя и проходит через встроенный эквивалент msbuild)

...