У vscode есть генератор csproj?

Я использую код Visual Studio, потому что он более легкий, чем Visual Studio, но все же дает мне смысл. Однако я не смог найти способ для Code создать автоматически.csproj или.sln, поэтому я делал файлы с нуля. На нем мало документации, поэтому мне пришлось отказаться от примеров из других файлов. Все было хорошо, но недавно я столкнулся с проблемой, когда компиляция с помощью msbuild не дает мне того же результата, что и компиляция csc.exe. Я получал бы BadImageFormatException всякий раз, когда загружал в dll и пытался использовать один из его классов. У меня вопрос, есть ли способ, чтобы vscode генерировал файл csproj или sln при создании новых проектов? И если нет, то есть ли способ сделать так, чтобы файлы csproj, которые я собираю, компилировались так же, как и с пакетными файлами?

файл csproj:

<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
    <Reference Include="System" />
    <Reference Include="System.Drawing" />
    <Reference Include="Splicer.dll">
        <HintPath>Splicer.dll</HintPath>
    </Reference>
    <Reference Include="DirectShowLib-2005.dll">
        <HintPath>DirectShowLib-2005.dll</HintPath>
    </Reference>
    <Compile Include="src\*.cs" />
</ItemGroup>
<Target Name="Build">
    <MakeDir Directories="$(OutputPath)"
        Condition="!Exists('$(OutputPath)')"
    />
    <Csc
        Platform="x86"
        NoWarn=""
        Sources="@(Compile)"
        OutputAssembly="$(OutputPath)$(AssemblyName).exe"
    />
</Target>
<PropertyGroup>
    <AssemblyName>SplicerDemo</AssemblyName>
    <OutputPath>bin\</OutputPath>
</PropertyGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />

Пакетный компилятор:

@echo off
set "CSC=C:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe"
set "Refs=Splicer.dll,DirectShowLib-2005.dll"
set "Files=src\SplicerDemo\*.cs"
set "Compile=%csc% /platform:x86 /r:%Refs% /out:SplicerDemo.exe /t:exe %Files$"
cmd

Файл для компиляции:

using Splicer.Renderer;
using Splicer.Timeline;

using System.Drawing;

namespace SplicerDemo   {
    public class Start  {
        // Variables
        public string   outputFile;

        public Start()  {
            outputFile= "Foo.avi";
        }

        public static void Main()   {
            Start   s=  new Start();

            System.Console.WriteLine("Starting Build...");
            s.save();
            System.Console.WriteLine("Build Finished!");
        }

        // --- Methods ---

        public void save()  {
            // Variables
            DefaultTimeline timeline=   new DefaultTimeline(24);
            IGroup  _group= timeline.AddVideoGroup(32, 1024, 786);
            ITrack  vtrack= _group.AddTrack();
            ITrack  atrack= timeline.AddAudioGroup().AddTrack();
            Bitmap  img=    new Bitmap("image3.jpg");

            vtrack.AddImage("image1.jpg", 0, 24);
            vtrack.AddImage("image2.jpg", 0, 24);
            vtrack.AddImage(img, 0, 100);
            vtrack.AddImage("image1.jpg", 0, 128);

            atrack.AddAudio("audio1.mp3", 0, vtrack.Duration);

            using(AviFileRenderer renderer= new AviFileRenderer(timeline, outputFile))  {
                renderer.Render();
            }
        }
    }
}

2 ответа

К сожалению, VSCode не имеет возможности создавать / создавать решения / проекты, ориентированные на полную версию.Net Framework, однако он поддерживает проекты, ориентированные на.Net Core. Вы можете использовать систему поддержки проектов Yeoman для создания и создания проектов, ориентированных на.Net Core.

Новое расширение C# Dev Kit от Microsoft создаст для вас файлы .sln и .csproj.

Подробные инструкции на данный момент находятся здесь, но вот краткая версия:

Установите расширение C# Dev Kit, затем следуйте инструкциям из документации выше:

  1. Откройте палитру команд, используя ⇧⌘P, а затем введите «.NET».
  2. Найдите и выберите команду .NET: Новый проект.
  3. После выбора команды вам нужно будет выбрать шаблон проекта. Выберите консольное приложение.
  4. Чтобы запустить приложение, выберите «Выполнить» > «Начать отладку» в верхнем меню или используйте сочетание клавиш F5.

Интерфейс сейчас вроде как лучший, но он работает.

Другие вопросы по тегам