Подтвердить что ты не робот

Можете ли вы смешивать языки .net в рамках одного проекта?

Можете ли вы смешивать языки .net в рамках одного проекта? Поэтому, предварительно скомпилированный, я хотел бы назвать классы и методы других исходных файлов.

Как для Интернета, так и для приложений?

В частности, меня бы интересовали F # и С#.

4b9b3361

Ответ 1

Вы можете смешивать языки в одной сборке с ILMerge и MSBuild.

Здесь - очень хороший пример.

Ответ 2

Да, вы можете, но Visual Studio не поддерживает его напрямую. Что вы будете делать, это компилировать код для netmodules, а затем объединить их в одну сборку. Компиляторы поддерживают параметр "/target: module", который генерирует эти сетевые модули.

Затем вы можете использовать компиляторы для ссылки на другие сетевые модули при создании или использовать Assembly Linker (Al.exe). Там даже задача msbuild для нее: AL (сборщик компоновщика) Задача.

В MSDN представлен полный обзор: Как создать сборку с несколькими фильтрами

Ответ 3

CMS упоминает интересный подход, но на самом деле я хотел бы предложить вам упростить и иметь разные сборки (проекты) для кода С# и F #. Имеются хорошо документированные точки связи между С# и F # (например, здесь и здесь) - Я бы порекомендовал их. Различия между С# и F # (особенно с F #, имеющими разное время выполнения!) Довольно велики...

Ответ 4

вы можете указать язык в каждом проекте сборки (DLL библиотеки) и использовать несколько из них в одном решении, но я не думаю, что вы можете смешивать языки в рамках одной сборки

Ответ 5

Вы можете сделать это в веб-сайте проекта против компиляции первого проекта: http://www.aspnetlibrary.com/articledetails.aspx?article=Use-C-Sharp-and-VB.NET-in-the-same-project. Веб-сайт BuildProvider решает языковые элементы на лету.

BuilderProvider еще не доступен для проектов без веб-сайта, так что вы не повезло для стандартного приложения смешанного Intellisense.